在javascript字符串中查找反斜杠转义括号和空格。
我有一个字符串:(some string)
,我需要它\(some\ string\)
现在,我这样做:
x = '(some string)'
x.replace('(','\\(')
x.replace(')','\\)')
x.replace(' ','\\ ')
这很有效,但很难看。有更清洁的方法吗?
答案 0 :(得分:11)
你可以这样做:
x.replace(/(?=[() ])/g, '\\');
(?=...)
是一个先行的断言,意味着'后面跟着'
[() ]
是一个角色类。
答案 1 :(得分:2)
使用正则表达式,替换字符串中的$0
替换原始匹配的内容:
x = x.replace(/[() ]/g, '\\$0')