我正在尝试匹配表单的可选引用字符串,奇数引号是无效字符串。
"the quick brown fox" abc def
匹配the quick brown fox
和
the quick brown fox abc def
返回整个字符串
我发现这非常接近 matching optional quotes
所以我厌倦了以下^(")?(.*)(?(1)\1|)
然后无效的报价变得有效,这是不好的。
修改
如果输入字符串以“然后找到结束引号并在引号中返回字符串。如果引号不匹配则不返回任何内容。如果字符串不以”开头“,则返回整个字符串。
我觉得这很接近......
^(")?([^"]+)(?(1)\1|$)
感谢各种评论 - 这就是我正在寻找的
^(")?([^"]+\w)(?(1)\1|$)
答案 0 :(得分:1)
"(?:"|.)*?"|^[^"]*$
第一部分仅捕获引用的文本,第二部分捕获没有引号的entieres行。
希望它会对你有所帮助。