我需要一个.NET(C#)正则表达式来解析一串搜索词。这些术语是关键:值对并由空格分隔。抛弃循环的事实是键:值对可能在值中有空格。
这是一个示例字符串:
f:john l:smith c:san francisco st:ca
我希望得到以下条款:
f:john
l:smith
c:san francisco
st:ca
有任何帮助吗?感谢。
答案 0 :(得分:4)
我认为这个会奏效。它使用前瞻来确保最后一个单词没有:
终止它。
\b\w+:[\w\s]+\b(?!:)
答案 1 :(得分:0)
这是我的尝试:
([\w]+)\:([\w\s]+)\s(?=([\w]+)\:)?
2个警告: