如果源字符串包含特殊字符,如何用其他字符串替换字符串[重复]
Posted
技术标签:
【中文标题】如果源字符串包含特殊字符,如何用其他字符串替换字符串[重复]【英文标题】:How to replace string by other strings if the source string contain special characters [duplicate] 【发布时间】:2018-08-01 05:14:51 【问题描述】:为了清理一些字符串,我必须删除一些包含一些特殊 UTF-8 字符的子字符串。
示例:
source = "Skoda"
to_be_clean = "Škoda Rapid"
我需要从to_be_clean
替换字符串source
。
显然,to_be_clean
字符串包含一些特殊字符。有没有办法简单地完成这项任务。
这就是我今天的做法。
output = to_be_clean.replace(source + ' ', '')
我正在考虑一个正则表达式,但我需要列出所有可能的字符。
【问题讨论】:
真的不清楚你想要什么。您是否希望找到一种方法使"Škoda"
等于 "Skoda"
以便您可以删除它?关于从 Unicode 中删除重音有很多问题;你用谷歌搜索过吗?
【参考方案1】:
unicodedata 模块应该可以解决您的问题。
# -*- coding: utf-8 -*-
import unicodedata
to_be_clean = u"Škoda Rapid"
print unicodedata.normalize('NFKD', to_be_clean).encode('ASCII', 'ignore')
输出:
Skoda Rapid
【讨论】:
谢谢,正是我想要的。我实际上不知道 unicodedata 模块。谢谢以上是关于如果源字符串包含特殊字符,如何用其他字符串替换字符串[重复]的主要内容,如果未能解决你的问题,请参考以下文章