【问题标题】:problem in not replaceing minus sign(-) with a blank using regex不使用正则表达式将减号(-)替换为空白的问题
【发布时间】:2011-07-08 11:53:27
【问题描述】:

我正在使用这个正则表达式将一些字符替换为"" 我把它当作

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

但是当我的查询为+White+Diamond 时,我得到结果+White+Diamond,但是当查询为-White+diamond 时我得到White+diamond,这意味着-"" 替换,我没有想。 请告诉我是什么问题。

【问题讨论】:

    标签: regex special-characters


    【解决方案1】:

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

    【讨论】:

    • 或者放在类的末尾或开头。
    • @Romi 在这种情况下,+ - ^ 的意思是“加上,从 空白空白,环号”。顺便说一句,[] 中的字符之间不需要空格。
    【解决方案2】:

    SteeveDroz 说的:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-07
      • 1970-01-01
      • 2020-09-12
      • 1970-01-01
      • 2023-04-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多