正则表达式介于 “ 之间,但不能超越
本文关键字:但不能 超越 之间 正则表达式 | 更新日期: 2023-09-27 18:19:02
我想使用正则表达式来捕获"
之间的所有内容(包括"
本身(问题是这样的:
正则表达式:
'''"(.[^,][^'''"]*)'''"
发短信:
"text", text2, "text"
meeeh = "Y"
else
meeeh2 = "N"
使用此正则表达式,将选择以下选项:
"text" "text"
"Y"
else
meeeh2 = "
问题似乎是,当"
后面没有任何东西或有换行符时,正则表达式不会停止。
有什么想法吗?
.*?('".*?'").*?
试试这个。请看一下演示。
http://regex101.com/r/cA4wE0/7
当它到达"Y"
的第一个"
时,这就是正则表达式的作用:
-
'"
匹配"
-
.
比赛Y
-
[^,]
匹配"
-
[^'"]*
匹配else meeeh2 =
-
'"
比赛"
不是逗号的字符,然后是双引号以外的任何字符,直到最后"。这意味着至少 2 个字符,但Y
只有 1 个字符。
如果您的意思不是引号之间的引号,请使用 '"([^"]*)'"
。如果你的意思不是引号和逗号,'"([^",]*)'"
应该做的。