我有一个大字符串,其中可能包含许多类似于此结构的路径:dirA / dirB / a1ed4f3b-a046-4fbf-bb70-0774bd7bfcn我需要a1ed4f3b-a046-4fbf-bb70-0774bd7bfcn用“”替换字符串部分之前的所有内容local/,以便结果如下所示:本地/a1ed4f3b-a046-4fbf-bb70-0774bd7bfcn字符串的开头也可以不只包含 dirA/dirB/。如何在 Python 中进行这种字符串操作?
3 回答
撒科打诨
TA贡献1934条经验 获得超2个赞
使用正则表达式,您可以替换所有内容,包括最后"/"一个"locals/"
import re
s = "dirA/dirB/a1ed4f3b-a046-4fbf-bb70-0774bd7bfcn"
re.sub(r'.*(\/.*)',r'local\1',s)
你得到:
'local/a1ed4f3b-a046-4fbf-bb70-0774bd7bfcn'
MYYA
TA贡献1868条经验 获得超4个赞
使用os模块
前任:
import os
path = "dirA/dirB/a1ed4f3b-a046-4fbf-bb70-0774bd7bfcn"
print(os.path.join("locals", os.path.basename(path)))
斯蒂芬大帝
TA贡献1827条经验 获得超8个赞
另一种选择是将字符串拆分"/",然后"locals/"与结果列表的最后一个元素连接。
s = "dirA/dirB/a1ed4f3b-a046-4fbf-bb70-0774bd7bfcn"
print("locals/" + s.split("/")[-1])
#'locals/a1ed4f3b-a046-4fbf-bb70-0774bd7bfcn'
添加回答
举报
0/150
提交
取消
