javascript - 如何处理正则表达式中的\(转义)字符?

标签 javascript regex

我有以下脚本,它将用 \"\a 替换 "a 字符。

'"replace'.replace(/"|a/g, "\\$&");

结果:\"repl\ace

现在我需要的是将 \(转义字符)替换为 \\。但在 Chrome 控制台中尝试以下代码失败,并出现异常 SyntaxError:无效的正则表达式:缺少/

'"re\place'.replace(/"|a|\/g, "\\$&");

替换正则表达式(Javascript)中的转义字符的可能解决方法是什么?

更新

简化 pblm,为什么 'rep\lace'.toString() 结果是 'replace' 而不是 'rep\lace'?

关于同样的问题,我已经尝试过这些代码,

  1. "re\nlace".toString(); 结果 re 换行 lace
  2. "re\xlace".toString(); 结果SyntaxError:意外的标记非法。可能是 b,因为\x 不可执行。

我认为 Javascript 正在执行字符串值。但为了什么?

最佳答案

'"replace'.replace(/"|a|\\/g, "\\$&");

关于javascript - 如何处理正则表达式中的\(转义)字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12550686/

相关文章:

javascript - 正则表达式电话号码验证

带有右方括号字符的 javascript 匹配方法

java - "(?i)"不适用于重音

c# - 正则表达式:我想要这个和那个以及那个......以任何顺序

javascript - 使用 jQuery 创建 Messenger 应用程序(失败)

javascript - 在 pageinit 上使用 jQuery Mobile 触发点击

javascript - 根据单词和带有 `^` 符号的突出显示部分分割字符串

javascript - 滚动布局 - 像 facebook 或 google plus 右侧边栏

javascript - 嵌入式脚本不适用于 Angular 7

java - 是否有一个 java "regular expression"库支持任意对象序列,而不仅仅是字符串(字符序列)?