忽略重音的Java字符串搜索 - 第二部分

时间:2012-05-30 07:44:36

标签: java unicode

这个问题是Java string searching ignoring accents的延续。

原始问题的答案向我们展示了如何从字符串中删除变音符号。因此,例如,köln变为 koln 。但łódź变为łodz - 请注意l with stroke

我的问题是如何删除中风,以便łódź变为 lodz

感谢。

2 个答案:

答案 0 :(得分:2)

你不能,至少不能轻易地为所有这些信件。字母ł(外观及其Unicode名称除外)根本没有链接到l(至少在Unicode中;在语言上,这是另一回事)。

您唯一的选择可能是您的用例转换表,您可以填写转换所需的所有字符。

答案 1 :(得分:1)

正如tchrist建议的那样,我试图使用ICU(V 50.1):它也没有认识到它来自L。 具有笔划的L似乎是Unicode中的特殊情况。看看http://bugs.mysql.com/bug.php?id=11369 他们说在Unicode 4.0中它没有连接到L,而在Unicode 4.1中它是。我想知道是否有人用基于Unicode4.1的Java库测试了这个问题。