我正在尝试为我的应用程序编写一个过滤器函数,该函数将采用输入字符串并以某种方式过滤掉与给定输入不匹配的所有对象.最简单的方法是使用String的contains方法,即只检查对象(对象中的String变量)是否包含过滤器中指定的字符串,但这不会考虑重音.
有问题的对象基本上是Persons,我想要匹配的字符串是名称.因此,例如,如果有人搜索Joao,我会期望Joáo被包含在结果集中.我已经在我的应用程序中使用了Collator类来按名称排序,它运行良好,因为它可以进行比较,即使用英国语言环境á来自b之前但是之后.但是,如果你比较a和á因为它们不相等,它显然不会返回0.
那么有谁知道我怎么能这样做?
我想知道是否有一种方法比较2个字符串并忽略使"noção"等于"nocao"的重音.它会像string1.methodCompareIgnoreAccent(string2);
可能的重复:
Java.在比较字符串Java字符串搜索忽略重音时
忽略重音
大家好
我需要比较java中可能像'Chloe'和'Chloé'的字符串.我需要它们是平等的.谁知道最佳做法是什么?还是有一些第三方图书馆?
罗马
我有一个要按第一个字母排序的 unicode 字符串列表。问题是我不知道设置 java.text.Collator 它将相似的字母视为不同的。
这就是我现在得到的:
这就是我想要得到的(以Š开头的单词应该总是跟在S后面而不是第二个字母):