Javascript 如何计算';但不是';一串
我知道如何用javascript处理正则表达式的基本知识。我能数一数字符串中的“和”。但是如何匹配字符串中的“and not”。到目前为止,我有一个解决办法,将两个比赛的结果相减。是否可以在单个正则表达式模式中找到计数include'和excludes\。在JavaScript中,您没有,因此您无法轻松检查Javascript 如何计算';但不是';一串,javascript,regex,Javascript,Regex,我知道如何用javascript处理正则表达式的基本知识。我能数一数字符串中的“和”。但是如何匹配字符串中的“and not”。到目前为止,我有一个解决办法,将两个比赛的结果相减。是否可以在单个正则表达式模式中找到计数include'和excludes\。在JavaScript中,您没有,因此您无法轻松检查'前是否有奇数个反斜杠,除非您将这些字符作为匹配的一部分 因此,您需要做一些更复杂的事情—匹配以单个未转义引号结尾的所有字符串,有效地将整个输入分割为块,每个引号对应一个块。然后计算这些块:
'
前是否有奇数个反斜杠,除非您将这些字符作为匹配的一部分
因此,您需要做一些更复杂的事情—匹配以单个未转义引号结尾的所有字符串,有效地将整个输入分割为块,每个引号对应一个块。然后计算这些块:
/[^\\']*(?:\\.[^\\']*)*'/g
将匹配字符串的所有这些部分
测试一下
说明:
[^\\']*#匹配除反斜杠和引号外的任意数量的字符。
(?:#非捕获组的开始:匹配。。。
\\.#转义字符(任何转义序列,如\'等),
[^\\']*#后跟除反斜杠和引号以外的任意数量的字符。
)*#根据需要经常这样做(甚至0次)
“#直到您可以匹配单个(未替换的)报价