special_chars = ['.', ',', '-', '(', ')', '@', '?', '‘', '’', '“', '”', '`', '#', '+', '!', '$', '|', ':', '/', ';', '*', '《', '》', '<', '>', '%', '^', '_', '[', ']', '{', '}', '\\', '~', '=', '\'', '±', '°', '«', '»', 'µ', '¶', '·', '€', '£', '¥', '¢', '×', '÷', '¬', '…', '→', '←', '↑', '↓', '↔', '⇒', '⇐', '≈', '≠', '≤', '≥', '.', ',', '-', '(', ')', '@', '?', '"', '\'', '#', '+', '!', '$', '|', ':', '/', ';', '*', '<', '>', '%', '^', '_', '[', ']', '{', '}', '\', '~', '¨', '´', '', '¿', '‰', '¯', '\x1A', '£', '>', '¿', '«', '´', '»', '°', '®', '·', '¼', '©', '¶', "'", '"', '–', '=' ] special_char_dict = {c: ' ' for c in set(special_chars)} special_char_dict['&'] = ' and ' special_char_dict['&'] = ' and ' special_chars_trans = str.maketrans(special_char_dict) multi_char_replacements = { 'Ï ½Ï ½Ï ½': ' ', 'Ï ½Ï ½': ' ' } def clean_company_name(name): if name: for multi_char, replacement in multi_char_replacements.items(): name = name.replace(multi_char, replacement) # 特殊字符替换为空格 name = name.translate(special_chars_trans) # 转大写,去除连续空格,去除首尾空格 name = ' '.join(name.upper().split()) return name else: return None if __name__ == "__main__": print(clean_company_name('BOLLORE LOGISTICSÏ ½Ï ½Ï ½ DUNKERQUE'))