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

Kev*_*ker 5 javascript regex escaping

期望在javascript字符串中反斜杠转义括号和空格.

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

现在,我这样做:

x = '(some string)'
x.replace('(','\\(')
x.replace(')','\\)')
x.replace(' ','\\ ')
Run Code Online (Sandbox Code Playgroud)

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

Cas*_*yte 12

你可以这样做:

x.replace(/(?=[() ])/g, '\\');
Run Code Online (Sandbox Code Playgroud)

(?=...) 是一个先行断言,意味着"跟着"

[() ] 是一个角色类.