如何使用可选字符捕获每个匹配项?
这就是我的意思:
keystring word
keystring word,word1,word2
keystring word,word1:BLUE,word2:RED
我有一个关键字符串,在每个句子中都有一个或多个用,
分隔的单词,有时它们有一个可选的:
,后跟一个大写的字符串值。
到目前为止,这是我能捕捉到的: https://regexr.com/3jdg1
答案 0 :(得分:1)
您可以使用:
(\w+(:\w+|\s\w+?)?(,\s+)?)+
或者您知道关键字:
keystring\s(\w+(:\w+|\s\w+?)?(,\s+)?)+
您可以尝试here (pythex.org)
这应该像这些那样匹配孔线:
keystring word
keystring word, word1, word2
keystring word, word1:BLUE, word2:RED
keystring word, word1, word2:RED
keystring word, word1, word2:RED, word3
而不是像这样的行:
tralala, hello, 33