我使用的是在this similar question中找到的以下RegEx:/[^\s"]+|"[^"]*"/g
我想用空格分隔字符串,除非字符串用双引号引起来。结果必须包含引号。
这是我的C#代码:
MatchCollection conditions = Regex.Matches(strCondition, @"/[^\s""]+|""[^""]*""/g");
条件。计数始终为零!当我在线测试正则表达式时,它工作正常!
输入示例:
"0" MATCHES NOCASE "Den Bosch" OR "0" MATCHES NOCASE "'s Hertogenbosch"
"0" MATCHES "1" AND "1" MATCHES "2" AND "2" MATCHES "3" AND "3" MATCHES "4" AND "4" MATCHES "5"
我做错了什么?我浪费了几个小时,再也没有线索了。
在我的例子中,(?<=")\w[\w\s]*(?=")|\w+|"[\w\s]*"
确实给予了结果,但没有给出期望的结果,因为它在单引号上失败了。
1条答案
按热度按时间jqjz2hbq1#
.NET中的正则表达式不使用
/
分隔符,因此: