Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 要匹配字符串的正则表达式模式_.net_Regex_Pattern Matching - Fatal编程技术网

.net 要匹配字符串的正则表达式模式

.net 要匹配字符串的正则表达式模式,.net,regex,pattern-matching,.net,Regex,Pattern Matching,我正在寻找一个正则表达式模式,将匹配字符串。字符串,定义为引号中的任何内容。我要做的是解析这些字符串: PRINT "test" PRINT "Hello":PRINT "World" 我现在的模式是:“\”*\”。它可以很好地解析第一行。它返回/“test/,但第二行返回/“Hello”:PRINT“World/,这是不正确的。它需要匹配第一个引号和第二个引号之间的内容。它似乎匹配整行中第一个引号和最后一个引号之间的任何内容 任何帮助都将不胜感激。如果重要的话,这是.NET正则表达式 您的问

我正在寻找一个正则表达式模式,将匹配字符串。字符串,定义为引号中的任何内容。我要做的是解析这些字符串:

PRINT "test"
PRINT "Hello":PRINT "World"
我现在的模式是:“\”*\”。它可以很好地解析第一行。它返回/“test/,但第二行返回/“Hello”:PRINT“World/,这是不正确的。它需要匹配第一个引号和第二个引号之间的内容。它似乎匹配整行中第一个引号和最后一个引号之间的任何内容


任何帮助都将不胜感激。如果重要的话,这是.NET正则表达式

您的问题是,正则表达式在默认情况下是贪婪的,这意味着它们将获取尽可能长的匹配字符串。。您的正则表达式的非贪婪版本是:

"\"[^"]+?\"

我使用+而不是*假设您只想匹配非空字符串。

您的问题是,正则表达式在默认情况下是贪婪的,这意味着它们将选择最长的匹配字符串。。您的正则表达式的非贪婪版本是:

"\"[^"]+?\"
"[^"]*" 我使用+而不是*假设您只想匹配非空字符串

"[^"]*" 另请参阅


另请参见。

此图案效果很好。谢谢你的帮助,谢谢你对正则表达式的贪婪/不贪婪规则。@ice:不客气。顺便说一句,我认为@JohnWeldon也值得投票。@Tomalak,我感谢你的点头:),正确的问题得到了我的接受:)这种模式很有魅力。谢谢你的帮助,谢谢你对正则表达式的贪婪/不贪婪规则。@ice:不客气。顺便说一句,我认为@JohnWeldon也值得投票。@Tomalak,我感谢你的点头:),正确的问题被我接受了:)