【问题标题】:Javascript RegEx Object Double Escape Special CharactersJavascript RegEx 对象双转义特殊字符
【发布时间】:2013-04-15 15:04:12
【问题描述】:

我已经检查了http://www.w3schools.com/jsref/jsref_obj_regexp.asp(不是我太有希望了)和这里的各种问题都没有运气。

我需要的是一种在javascript中双重转义c#特殊字符的方法:

包含"\b"(退格字符)的字符串

需要更改为 "\\\\b"(又名文字 "\\b")。

例如 "foo_bar_\b"需要变成@"foo_bar_\\\\b"

我的主要困难只是捕捉特殊字符和 mystring.replace(/(\[|\])/g, '\\\\$1'); 是我发现的最接近的东西。

【问题讨论】:

  • 如果您只处理单个字符,请使用以下语法:/([\[\]])/g。无论如何,你的代码有什么问题?
  • 验证器不喜欢合法返回的 "\b"(它是无效的 .xml + 等)字符。
  • 第匹配 "\b" 与正则表达式 [\b]
  • 是的,问题是我该怎么处理所有其他转义字符,甚至单个"\"?除非有原生的东西(类似于 .net 中的 Regex.Escape),否则很难找到比我发布的更好的正则表达式模式

标签: c# javascript regex


【解决方案1】:

没关系,我明白了:

mystring.replace(/(\\)/g, '\\\\')

(花了我足够长的时间)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    • 2015-02-16
    • 2011-06-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多