【问题标题】:Regex to Match Quoted Strings Ignoring Double Quotes正则表达式匹配带引号的字符串忽略双引​​号
【发布时间】:2014-06-30 22:03:35
【问题描述】:

我正在尝试匹配 Excel 样式公式中的引用字符串:

= "Red" & "Blue" & "Green"

以下正则表达式可以很好地找到匹配项:

".*?"

我遇到问题的地方是匹配包含 Excel/VBScript 转义引号(两个引号一起):

= "Red" & "Blue" & """Green"" as grass"

我希望在一个匹配项中捕获双引号,所以我最终得到:"Red"、"Blue"、"""Green"" as grass"。

我在 JavaScript 中这样做。

【问题讨论】:

    标签: javascript regex


    【解决方案1】:

    看起来这个正则表达式很适合你:

    /"(?:[^"]|"")*"/g
    

    解释:

    1. 以双引号开头的子字符串
    2. 里面没有引号或双双引号
    3. 后跟引号字符

    JSFiddle:http://jsfiddle.net/S22Qe/

    正则表达式101:http://regex101.com/r/mJ0pX0/1

    【讨论】:

      猜你喜欢
      • 2014-05-12
      • 1970-01-01
      • 1970-01-01
      • 2010-09-13
      • 1970-01-01
      • 2023-03-27
      • 2016-08-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多