我试图编写一个与双引号字符串匹配的正则表达式 - 这个字符串中可能存在转义双引号。
我目前对此正则表达式的尝试可以找到here:
^"([^"]|\\")*"
我试图针对以下值运行此操作:
"sdfs\"dasf"
正则表达式将在第二个双引号处完成,而不是按预期在第三个双引号处完成。但是,如果我在正则表达式的末尾添加$
,它将正确解析。不幸的是,我不能在代码实现中使用字符串符号($
)的结尾。
似乎捕获组不够贪婪,并允许第二个双引号转到正则表达式的末尾。
任何可能导致此行为的想法或如何解决此问题?
答案 0 :(得分:0)
这应该可以解决问题:
"(?!\\").+"