正则表达式捕获'?'和'%3f'在javascript的replace()方法中

时间:2013-11-03 05:14:09

标签: javascript regex

我对Regex感到非常糟糕,无法在Stack上找到合适的答案。

我有一个这样的字符串:

 var str = 'abc?def%3f999%3F^%&$*'

我只想删除以下内容:

?%3f%3F(问号的实体代码)

我试过这个:

 var theQuery = str.replace([\\?]|\\%3f|\\%3F,'');

但这似乎不是有效的regex。什么是可以在这里工作的解决方案?

1 个答案:

答案 0 :(得分:2)

您可以使用:

var str = 'abc?def%3f999%3F^%&$*'
var theQuery = str.replace(/\?|%3f/gi, '');
//=> abcdef999^%&$*
  • 您需要使用正则表达式分隔符//
  • 您需要使用全局切换g
  • 无需双重逃避
  • 无需逃避%