在python中保留带重音的英文字母的同时删除外来字母

2024-05-15 20:47:58 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有办法去掉外来字母,但在python中保留带有重音的英文字母?你知道吗

例如,我希望Pic d's转换为Pic d'Os,但没有将Pic d'Os转换为Ma Sa Na-理想情况下,我希望它转换为空白字符串。你知道吗

我使用了unidecode,但是unidecode也将外来字母转换成ascii。你知道吗

谢谢你调查此事。你知道吗


Tags: 字符串os字母asciisa情况空白na
1条回答
网友
1楼 · 发布于 2024-05-15 20:47:58

现代正则表达式引擎支持字符类LatinisLatin,它们将匹配重音或非重音拉丁字母。你知道吗

只匹配所需内容的正则表达式会稍微复杂一些。你不想简单地匹配LetterNumber,因为它们会匹配其他脚本中的字母和数字。您也不希望包含或排除所有组合重音:您希望小型拉丁文字母a+组合锐音符显示为á,但带重音的希腊字母不显示为。所以,您需要匹配(\p{Latin}\p{Mark}*)|\p{Punctuation}|\p{Separator}之类的内容。你知道吗

相关问题 更多 >