我需要将VBA脚本转录为Javascript,但我被java部分卡住了
其主要含义是删除文本中的数字,如"texthere 123456789“
我的VBA代码是:
Function RemoveNum(Txt As String) As String
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[0-9]"
RemoveNum = .Replace(Txt, "")
End With
End Function
我的Javascript尝试是:
function RemoveNumbers(RemoveNumbers) {
var RemoveNumbers;
//var str = RemoveNumbers.toString();
var str = RemoveNumbers;
str.Value.replace(/[0-9]/g, '');
}
或者甚至是:
function rn(remvnum) {
var str = remvnum;
var n = str.toString();
var res = n.replace(/[0-9]/gmi, '');
}
阻止我得到结果的是,.Replace函数需要是字符串内容,否则将返回未定义值的错误,而且我无法转换toString,因为它返回未定义值的错误。
下面这个例子运行得很好,因为函数的名称是作为自定义函数写在Google表单元格中的,但我没有实现删除数字的愿望:
function styleHyphenFormat(propertyName) {
function upperToHyphenLower(match, offset, string) {
return (offset ? '-' : '') + match.toLowerCase();
}
return propertyName.replace(/[A-Z]/g, upperToHyphenLower);
}
有人知道我做错了什么吗?
提前谢谢。
发布于 2018-10-04 19:11:58
尝试removeNumbers = removeNumbers.replace(/[0-9]/g, '');
或设置一个新的变量,如noNums = removeNumbers.replace(/[0-9]/g, '');
https://stackoverflow.com/questions/52653521
复制相似问题