正则表达式与Python re的匹配(从行尾开始)

正则表达式与Python re的匹配(从行尾开始),python,Python,我在匹配最后一个词“城市”或“城市” 工作在regex101.com()上,但不是在Python中 folder = i.find ( 'folder' ).text # Top > Continent > Country > City country = re.match ( r'\s+\S*$', folder ) print ( folder ) 输出我得到“无”。您应该在此处使用re.search,因为您不希望正则表达式模式锚定到输入的开头(这是re.

我在匹配最后一个词“城市”或“城市”

工作在regex101.com()上,但不是在Python中

folder = i.find ( 'folder' ).text
# Top > Continent > Country > City
    country = re.match ( r'\s+\S*$', folder )
    print ( folder )

输出我得到“无”。

您应该在此处使用
re.search
,因为您不希望正则表达式模式锚定到输入的开头(这是
re.match
的默认行为):

这张照片是:

Found a match: City
编辑:

谢谢你给我指明了正确的方向

除场景外(对于包含2个单词的城市名称):

输出:

City City 
> City 
似乎无法排除最后一个'>'

也许左边的匹配在3'>'加上空格后捕获所有内容

# Top > Continent > Country > City City 
p = re.compile("[^ ]+\\s+[^ ]+$") 
City City 
> City