javascript中需要正则表达式帮助
第一个问题在这里,所以请友好:) 我对正则表达式知之甚少,但我在当前的一个项目中使用了一个正则表达式,该项目从字符串中去除特殊字符。看起来像这样javascript中需要正则表达式帮助,javascript,regex,Javascript,Regex,第一个问题在这里,所以请友好:) 我对正则表达式知之甚少,但我在当前的一个项目中使用了一个正则表达式,该项目从字符串中去除特殊字符。看起来像这样 newWord = newWord.replace(/[^0-9A-Za-z ]/g, ""); 它工作得很好,但我需要稍微修改它,这样它就不会删除英镑字符 我尝试过几种方法,但没有从一开始就学习正则表达式,我只是在猜测,没有一种有效 有人能帮忙吗 newWord = newWord.replace(/[^0-9A-Za-z£ ]/g, "") 或
newWord = newWord.replace(/[^0-9A-Za-z ]/g, "");
它工作得很好,但我需要稍微修改它,这样它就不会删除英镑字符
我尝试过几种方法,但没有从一开始就学习正则表达式,我只是在猜测,没有一种有效
有人能帮忙吗
newWord = newWord.replace(/[^0-9A-Za-z£ ]/g, "")
或者使用unicode转义
newWord = newWord.replace(/[^0-9A-Za-z\u00a3\u0020]/g, "")
使用此正则表达式所做的是删除不在您提供的列表中的任何字符。减号
字符用于表示范围,因此不在0-9(0,1,2,3,…9)a-Z和a-Z中的任何字符都将被零(“”)替换。通过添加英镑,它将不再以零代替它
newWord = "10 -+-sdf£";
newWord = newWord.replace(/[^0-9A-Za-z £]/g, "");
WScript.StdOut.WriteLine(newWord);
或者使用unicode转义
newWord = newWord.replace(/[^0-9A-Za-z\u00a3\u0020]/g, "")
使用此正则表达式所做的是删除不在您提供的列表中的任何字符。
减号
字符用于表示范围,因此不在0-9(0,1,2,3,…9)a-Z和a-Z中的任何字符都将被零(“”)替换。通过添加一个£it将不再以零取代它。您可以将该网站用作快速参考指南,而无需详细了解任何内容。您可以将该网站用作快速参考指南,而无需详细了解任何内容。Triptych有一个很好的观点——在ASCII之外,字符集不提供任何保证。您最好使用\u00a3。我还建议对空格字符使用类似的转义序列以提高可读性,因为如果它是实际的空格(我第一次阅读问题时是这样做的),很容易忽略它。请确保数据和脚本都使用相同的编码。否则,更换可能会出错。正如Jonathan所指出的,您最好使用Unicode语法。Triptych有一个很好的观点——在ASCII之外,字符集不提供任何保证。您最好使用\u00a3。我还建议对空格字符使用类似的转义序列以提高可读性,因为如果它是实际的空格(我第一次阅读问题时是这样做的),很容易忽略它。请确保数据和脚本都使用相同的编码。否则,更换可能会出错。正如Jonathan指出的那样,您最好使用Unicode语法。
newWord = "10 -+-sdf£";
newWord = newWord.replace(/[^0-9A-Za-z £]/g, "");
WScript.StdOut.WriteLine(newWord);