Python は複数の文字を 1 つの文字に置き換えます (簡潔なコード)

Windows システムのファイル名には、使用できない特殊文字があります。どの文字が使用できないかを見てみましょう。

ファイル名には\ / : * ? " < > |合計 9 文字の特殊文字を含めることはできません


最初は replace() を使用して置換しようとしましたが、複数の文字を処理する必要があり、コードを記述するのがきれいではありませんでした。

一度に置換できる文字または文字列は 1 つだけです。

msg = "Hello/world\Hello|Python|?*"
msg = msg.replace('\\', ' ').replace('/',' ').replace('|',' ').replace(':',' ').replace('*',' ').replace('?',' ').replace('"',' ').replace('>',' ').replace('<',' ')
print(msg)

出力内容

解決

re.compile(r"[abc]")、これはabc削除して置き換えたい-ものです

import re
str2 = "/\|mrflysand *?,/ <>mrflysand 456!"
pat2 = re.compile(r"[*?:\"<>/|\\]")
result2 = pat2.sub("-",str2)
print(result2)

出力内容:

---mrflysand --,- --mrflysand 456!

おすすめ

転載: blog.csdn.net/MrFlySand/article/details/132289162