我正在使用PCRE和C ++(Borland)并希望得到一组的所有比赛。
^(\w+\s)(\w+\s)*(\w+)$
输入1:第一个第二个第三个 结果分为3组(第一,第二和第三)
输入2:第一个第二个第二个第三个 结果分为3组(第一组,第二组和第三组),但我需要4组。
第二个词是optinal,发生0 - n次。
答案 0 :(得分:2)
答案 1 :(得分:1)
我认为你最好的选择是匹配:
^(\w+\s)((?:\w+\s)*)(\w+)$
然后手动匹配内部x个单词,用字符串比较查找\s
。