不使用正则表达式替换空白的减号( - )的问题

时间:2011-07-08 11:53:28

标签: regex special-characters

我正在使用此正则表达式用""替换某些字符 我用它作为

query=query.replace(/[^a-zA-Z 0-9 * ? :  . + - ^ "" _]+/g,'');

但是当我的查询为+White+Diamond时,我会得到结果+White+Diamond,但当查询为-White+diamond时,我收到White+diamond,则表示-是替换为我不想要的""。 请告诉我这是什么问题。

2 个答案:

答案 0 :(得分:3)

在正则表达式中,-表示“从......到......”,使用反斜杠-转义\-

答案 1 :(得分:2)

Oltarus说:

query=query.replace(/[^a-zA-Z0-9*?:.+\-^"_ ]+/g,'');

我假设您也想要排除空格。如果没有,请从字符类中删除最后一个空格。