我好,我想在比赛后搜索下一个单词,所以当我用正则表达式(\ w +)在字符串"i use a table blue"
中搜索时,我会解决问题,但是"i use a table blue-green-red"
我如何不使用(\ w +)。(\ w +)。(\ w +)n次就可以得到整个单词。我怎么能得到,但是在"i use a table blue-green-red\n"
或"i use a table blue\n"
之后总会有回车符,所以即使后面的单词中有破折号n,我也该如何得到后面的整个单词
答案 0 :(得分:0)
如果我理解正确,那么您尝试提取的是匹配搜索中的最后一个单词(或后缀单词),即使该符号带有破折号也是如此。您还应确保在短语末尾保证有换行符\n
。
考虑到这一点,一种可能的解决方案是在\ w单词后包括一个贪心的运算符,并用换行符来抑制它,例如:
regex = r"i use a table (\w+.*)\n"
同时匹配:
"i use a table blue\n"
和
"i use a table blue-green-red\n"
提取最后一个单词。
在此处查看实际操作:https://regex101.com/r/34MBP3/1