Javascript:正则表达式转义括号和空格

时间:2014-04-04 21:03:22

标签: javascript regex escaping

在javascript字符串中查找反斜杠转义括号和空格。

我有一个字符串:(some string),我需要它\(some\ string\)

现在,我这样做:

x = '(some string)'
x.replace('(','\\(')
x.replace(')','\\)')
x.replace(' ','\\ ')

这很有效,但很难看。有更清洁的方法吗?

2 个答案:

答案 0 :(得分:11)

你可以这样做:

x.replace(/(?=[() ])/g, '\\');

(?=...)是一个先行的断言,意味着'后面跟着'

[() ]是一个角色类。

答案 1 :(得分:2)

使用正则表达式,替换字符串中的$0替换原始匹配的内容:

x = x.replace(/[() ]/g, '\\$0')