PHP正则表达式只匹配一个双引号

时间:2012-07-22 16:25:25

标签: php regex

我试图匹配只有一个双引号(“)的代码行。我试过了:

\"{1}

关于以下字符串

"this is a string"
"this is a string

正则表达式应该只匹配第二行,但它匹配它们。

任何人都知道怎么做?

2 个答案:

答案 0 :(得分:4)

您正在寻找非群体。

^[^\"]*\"[^\"]*$

答案 1 :(得分:2)

如果您想知道任何给定行上是否只有一个双引号字符,请尝试以下操作:

/^[^"]*"[^"]*$/m

注意m修饰符 - 这允许^$匹配任何给定行的开头和结尾,而不是匹配字符串的开头和结尾。< / p>