要从任意字符串生成有效的Windows文件名,请遵循以下步骤:
以下是一个Python示例,用于生成有效的Windows文件名:
import re
def generate_valid_windows_filename(input_string):
# 删除非法字符
cleaned_string = re.sub(r'[\\/*?:"<>|]', '', input_string)
# 将空格替换为下划线
cleaned_string = cleaned_string.replace(' ', '_')
# 检查字符串长度
if len(cleaned_string) > 255:
cleaned_string = cleaned_string[:255]
# 确保第一个字符不是点
if cleaned_string[0] == '.':
cleaned_string = '_' + cleaned_string[1:]
# 检查是否与保留名称冲突
reserved_names = ['CON', 'PRN', 'AUX', 'NUL', 'COM1', 'COM2', 'COM3', 'COM4', 'COM5', 'COM6', 'COM7', 'COM8', 'COM9', 'LPT1', 'LPT2', 'LPT3', 'LPT4', 'LPT5', 'LPT6', 'LPT7', 'LPT8', 'LPT9']
if cleaned_string.upper() in reserved_names:
cleaned_string = '_' + cleaned_string
return cleaned_string
这个函数可以接受任意字符串作为输入,并返回一个有效的Windows文件名。
领取专属 10元无门槛券
手把手带您无忧上云