相关疑难解决方法(0)

删除Python unicode字符串中重音的最佳方法是什么?

我在Python中有一个Unicode字符串,我想删除所有的重音符号(变音符号).

我在Web上发现了一种在Java中执行此操作的优雅方法:

  1. 将Unicode字符串转换为长标准化形式(字母和变音符号使用单独的字符)
  2. 删除Unicode类型为"变音符号"的所有字符.

我是否需要安装pyICU等库?或者只使用python标准库?那python 3怎么样?

重要说明:我想避免代码使用重音字符到非重音符号的显式映射.

python unicode diacritics python-2.x python-3.x

462
推荐指数
12
解决办法
23万
查看次数

如何在perl正则表达式(regexp)中匹配重音和波形符?

用户输入一组带有重音和波浪号的名称:

Renato Núñez, David DeJesús, and Edwin Encarnación 
Run Code Online (Sandbox Code Playgroud)

我的数据库为这些人设置了英文名称

@names = ('Renato Nunez','David DeJesus','Edwin Encarnacion');
Run Code Online (Sandbox Code Playgroud)

我希望对这些名称进行正则表达式匹配.

$string = "Renato Núñez, David DeJesús, and Edwin Encarnación";
foreach my $name (@names) {
    print "found:$name\n" if ($name =~ /$string/);
}
Run Code Online (Sandbox Code Playgroud)

如目前所示,我没有比赛.

我尝试了这个,但它没有用.

$string = "Renato Núñez, David DeJesús, and Edwin Encarnación";
foreach my $name (@names) {
    $name =~ s|a|[áa]|;
    $name =~ s|e|[ée]|;
    $name =~ s|i|[íi]|;
    $name =~ s|o|[óo]|;
    $name =~ s|u|[úu]|;
    $name =~ s|n|[ñn]|;
    # Originally: print "found:$name\n" if ($name =~ /$string/);
    # …
Run Code Online (Sandbox Code Playgroud)

regex unicode perl localization

11
推荐指数
1
解决办法
1万
查看次数

我如何在Python 2中折叠字符串?

Python 3.3将casefold方法添加到str类型,但在2.x中我没有任何东西.解决这个问题的最佳方法是什么?

python unicode python-2.x

11
推荐指数
1
解决办法
5618
查看次数