我有以下字符串:
type:crash status:new "status:in progress 2" type:bug email:example@example.com
我希望它匹配到:
第 1 场比赛
type:crash
第 2 场比赛
status:new
第 3 场比赛
status:in progress 2
第 4 场比赛
type:bug
第 5 场比赛
email:example@example.com
这是我尝试过的:
(\w+:\w+|"\w+:[\w\s]+)
不幸的是,我无法匹配双引号和电子邮件部分,您能告诉我如何增强此正则表达式以匹配上述数据吗。
最佳答案
不确定特定的边缘情况,但此正则表达式应匹配您示例中的所有内容。我在 Rubular 上测试了它。
("[^"]+"|[^\s]+:[^\s]+)
基本上是“引号中的任何内容”或“任何不是空格字符的内容一次或多次后跟一个冒号,然后再跟一些不是空格字符的内容”
关于ruby - GitHub 喜欢搜索正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34110973/