Python 3.x Python正则表达式获取字符串中的(任意)最后一个单词

Python 3.x Python正则表达式获取字符串中的(任意)最后一个单词,python-3.x,regex,string,Python 3.x,Regex,String,我的目标是得到字符串的最后一个单词,不管这个单词是什么 经过大量的尝试和错误,我很幸运地得到了下面的代码,因为我没有使用\w+而是尝试了\w+,得到了一个可以使用的结果 但是我的实际代码(你在这里看不到的代码)有点混乱,所以我的问题是;什么是正确的编译正则表达式来获取最后一个单词,或者两个单词 提前谢谢 import re var = ' hello my name is eddie ' r = re.compile(r'\S+\W+$') r2 = r.findall(var) pri

我的目标是得到字符串的最后一个单词,不管这个单词是什么

经过大量的尝试和错误,我很幸运地得到了下面的代码,因为我没有使用\w+而是尝试了\w+,得到了一个可以使用的结果

但是我的实际代码(你在这里看不到的代码)有点混乱,所以我的问题是;什么是正确的编译正则表达式来获取最后一个单词,或者两个单词

提前谢谢

import re

var = ' hello my name is eddie   '

r = re.compile(r'\S+\W+$')
r2 = r.findall(var)
print(r2)

#result ['eddie   ']
使用

结果:

['eddie']
['is']

\S+(?=\S*$)
-一个或多个非空白字符,在字符串末尾之前可能有可选的空白

\S+(?=\S+\S+\S*$)
-一个或多个非空白字符,可能包含一个或多个空白字符、一个或多个非空白字符,然后是可选空白字符,一直到字符串末尾。

使用

结果:

['eddie']
['is']

\S+(?=\S*$)
-一个或多个非空白字符,在字符串末尾之前可能有可选的空白

\S+(?=\S+\S+\S*$)
-一个或多个非空白字符,可能包含一个或多个空白字符、一个或多个非空白字符,然后是可选的空白字符,一直到字符串末尾。

像这样吗<代码>(\S+)\S*$或
变量strip().split(“”[-1]
,和
[-2:]
,如果需要两个单词。像这样吗<代码>(\S+)\S*$或
var.strip().split(“”[-1]
,如果需要两个单词,则使用
[-2:]