从字符串中的Java删除变音符号 [英] Remove diacritics from string in Java

查看:230
本文介绍了从字符串中的Java删除变音符号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

可能重复:
  <一href="http://stackoverflow.com/questions/1453171/n-n-n-or-remove-diacritical-marks-from-uni$c$c-cha">ń ǹ否否否否否否否̈ɲƞᶇɳȵ - &GT; n或卸下单code字符

如何删除字符串的变音符号?

How to remove diacritics from strings?

例如把所有A-> A,C - > C等,将适用于所有的语言。

For example transform all á->a, č->c, etc. that would work for all languages.

我在做全文搜索,并需要忽略的文本搜索的任何变音符号。

I'm doing full-text search, and would need to ignore any diacritics on searched text.

感谢

推荐答案

使用API​​级别9+可以使用的正规化类,如:

Using API level 9+ you can use the Normalizer class, e.g.

String normalized = Normalizer.normalize("âbĉdêéè", Form.NFD)
    .replaceAll("\\p{InCombiningDiacriticalMarks}+", "");

(Keysers联答案看起来更好,它清除更废话)

(Keysers linked answer looks better, it cleans more crap)

这将返回abcdeee

这篇关于从字符串中的Java删除变音符号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆