如何删除Python中错误的路径字符?

2024-04-08

在Python中删除错误路径字符(例如Windows上的“\”或“:”)的最跨平台的方法是什么?

Solution

因为似乎没有理想的解决方案,所以我决定相对限制性地使用以下代码:

def remove(value, deletechars):
    for c in deletechars:
        value = value.replace(c,'')
    return value;

print remove(filename, '\/:*?"<>|')

我认为最安全的方法是替换任何可疑字符。因此,我认为您可以替换(或删除)任何非字母数字、-、_、空格或句点的内容。方法如下:

import re
re.sub(r'[^\w_. -]', '_', filename)

上面的内容转义了所有非字母的字符,'_', '-', '.'或空间'_'。因此,如果您正在查看整个路径,您还需要将 os.sep 放入已批准的字符列表中。

这是一些示例输出:

In [27]: re.sub(r'[^\w\-_\. ]', '_', r'some\*-file._n\\ame')
Out[27]: 'some__-file._n__ame'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何删除Python中错误的路径字符? 的相关文章

随机推荐