我对正则表达式有一个小而烦人的问题。要解析的输入字符串(C#)如下所示:
( "Lorem ipsum dolor, sit amet" + "Maecenas fermentum commodo leo.", "aaa", 120 )
我希望正则表达式匹配第一个“和之前的第一个逗号之前的字符串”,所以我想找到:
Lorem ipsum dolor, sit amet" + "Maecenas fermentum commodo leo.
到目前为止,我提出了:
\(\s*?\"(.*?)\".*?\)
但结果是:
Lorem ipsum dolor, sit amet
任何帮助将不胜感激!
答案 0 :(得分:1)
你的正则表达式甚至看起来不像是试图匹配任何逗号。
您是否打算在第二次引用之后匹配逗号?
\(\s*?\"(.*?)\",.*?\)
您还应该注意
等输入( "Lorem ipsum dolor\", sit amet" + "Maecenas fermentum commodo leo.", "aaa", 120 )
像这样的时髦事物只使用正则表达式很难处理。
答案 1 :(得分:0)
您可以尝试将分隔逗号设为可选:
\(\s*\"(.+?)(\",.*|\"\s*)\)