请耐心等待,我是正则表达式的新手,所以我的语法可能会稍微有些出格。
这是我的表达:
"(?:\\s*[\"]?[']?\\s*)"
这相当于:任意数量的空白,然后是双引号的可能性,然后是单引号的可能性,然后是任意数量的空白。
我遇到的问题是,即使没有双引号或单引号,它仍然匹配。
如何使我的表达式必须至少有 1 个双引号或至少 1 个单引号?
这应该做的工作:
@"(?:\s*('|\")+\s*)"
试试这个表达式:
(?:\\s*[\\"\\']\\s*)
:D
如果您的意思是要找到一个单引号或一个双引号,那么只需将两者都放在一个字符组中,并且不要在其后面加上问号。
(?:\s*[\"']\s*)
如果你的意思是你想要 1 个或多个单引号或 1 个或多个双引号
(?:\s*([\"]+)|([']+)\s*)
如果你的意思是你想要 1 个或多个单引号或双引号
(?:\s*[\"']+\s*)