import re import string def remove_invalid_chars(text): # Windowsで無効な文字のリスト invalid_chars = re.escape(''.join([chr(i) for i in range(32)] + [ord(char) for char in '/\\:*?"<>|'])) # 無効な文字を空白に置換 cleaned_text = re.sub(r'[' + invalid_chars + ']', '', text) return cleaned_text # 使用例 file_name = "My.File$Name%^.txt" cleaned_file_name = remove_invalid_chars(file_name) print(cleaned_file_name) # 出力: "My.FileName.txt"