Skip to main content
 首页 » 编程设计

Python正则表达式问题

2025年05月04日23EasonJim

假设我有文本“C:\somedir\test.log”,我想用“somedir\logs”替换“somedir”。

所以我想从 'C:\somedir\test.log' 转到 'C:\somedir\logs\test.log'

如何使用 re 库和 re.sub 执行此操作?

到目前为止我已经试过了:

find = r'(C:\\somedir)\\.*?\.log' 
repl = r'C:\\somedir\\logs' 
print re.sub(find,repl,r'random text ... C:\somedir\test.log more \nrandom \ntext C:\somedir\test.xls...') 

但我只得到 'C:\somedir\logs'

请您参考如下方法:

您应该使用 os.path库来做到这一点。具体来说,os.path.join和 os.path.split .

这样它就可以在所有操作系统上运行,并且可以解决边缘情况。