如何替换 python 中的匹配字符串

how can I substitute a matched string in python

我有一个字符串 =""/One/Two/Three/Four"

我想转换成="Four"

我可以在 perl 中一行完成此操作

string =~ s/.*+\///g

如何在 python 中执行此操作?

Python的re模块可以处理正则表达式。对于这种情况,你会做

import re

my_str = "/One/Two/Three/Four"
new_str = re.sub(".*/", "", my_str)
# 'Four'

re.sub() 是正则表达式替换方法。就像您的 perl 正则表达式一样,我们只需查找任意数量的字符,后跟斜线,然后将其替换为空字符串。剩下的是最后一个斜线后的内容,即 4.

str_name="/One/Two/Three/Four"
str_name.split('/')[-1]

一般来说,split 是一种基于某些正则表达式将字符串转换为列表的安全方法。然后,我们可以调用该列表中的最后一个元素,在本例中恰好是 "Four"。

希望这对您有所帮助。

解决这个问题的可能性有很多。一种方法是索引字符串。其他串法可以参考here

string ="/One/Two/Three/Four"
string[string.index('Four'):]

此外,您可以使用 .split('/')

通过斜杠拆分字符串
print(string.split('/')[-1])

另一种选择是正则表达式:参见 here