关于这里的第一个问题,所以请保持友善:)
我对正则表达式知之甚少,但我在当前项目中使用了一个从字符串中删除特殊字符的表达式。它看起来像这样......
newWord = newWord.replace(/[^0-9A-Za-z ]/g, "");
效果很好,但我需要稍微修改它,以免它删除£(GBP)字符。
我已经尝试了几件事,但是从一开始就没有学习正则表达式,我只是猜测而且没有任何工作。
有人可以帮忙吗?
答案 0 :(得分:5)
newWord = newWord.replace(/[^0-9A-Za-z£ ]/g, "")
或使用unicode转义
newWord = newWord.replace(/[^0-9A-Za-z\u00a3\u0020]/g, "")
您正在使用此正则表达式删除任何不在您提供的列表中的字符。 minus
字符用于表示范围,因此任何不在0-9(0,1,2,3,... 9)A-Z和a-z中的字符都将替换为空(“”)。通过添加£,它将不再替换它。
答案 1 :(得分:0)
newWord = "10 -+-sdf£";
newWord = newWord.replace(/[^0-9A-Za-z £]/g, "");
WScript.StdOut.WriteLine(newWord);