gpt4 book ai didi

python - 从任何(不安全)字符串创建(理智/安全)文件名

转载 作者:IT老高 更新时间:2023-10-28 21:34:32 27 4
gpt4 key购买 nike

我想从一些随机的 Unicode 字符串(可能包含任何内容)创建一个健全/安全的文件名(即有点可读,没有“奇怪”字符等)。

(函数是Cocoa、ObjC、Python等对我来说都无所谓)


当然,可能有无数个奇怪的字符。因此,拥有黑名单并随着时间的推移向该名单添加越来越多的人并不是真正的解决方案。

我可以有一个白名单。但是,我真的不知道如何定义它。 [a-zA-Z0-9 .] 是一个开始,但我也想接受可以正常显示的 unicode 字符。

最佳答案

Python:

"".join([c for c in filename if c.isalpha() or c.isdigit() or c==' ']).rstrip()

这接受 Unicode 字符但删除换行符等。

示例:

filename = u"ad\nbla'{-+\)(ç?"

给出:adblaç

编辑str.isalnum() 一步完成字母数字。 – 下面来自 queueoverflow 的评论。 danodonovan 暗示要保留一个点。

    keepcharacters = (' ','.','_')
"".join(c for c in filename if c.isalnum() or c in keepcharacters).rstrip()

关于python - 从任何(不安全)字符串创建(理智/安全)文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7406102/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com