如何比较字符串与特殊字符如ü,ć,š等?

时间:2013-04-03 13:06:03

标签: java android sqlite

我有一些从sqlite数据库导入的文本,然后我将该文本设置为某个按钮。现在,我有一些文字,如München,Stanković或Kazalište。你明白了。用户必须猜出正确的答案,当用户插入小写单词时我解决了问题,而且我的单词是首字母大写。我只是将我的单词和他输入的单词转换为大写。但即使用户输入Munchen,Stankovic或Kazaliste,如果没有我在数据库中的特殊字母,如何接受答案?

3 个答案:

答案 0 :(得分:0)

尝试使用collat​​or。

Performing Locale-Independent Comparisons

  

排序规则定义字符串的排序顺序。这些规则各不相同   使用locale,因为各种自然语言对单词的排序方式不同   您可以使用Collat​​or提供的预定义排序规则   class以与语言环境无关的方式对字符串进行排序。

答案 1 :(得分:0)

我认为您需要使用可接受的字符显式替换所有特殊字符。所以,ü - >你等等。就像你使用toUpperCase一样,用U替换你。

答案 2 :(得分:0)

String expression ="š|ć|ü";
Pattern pattern = Pattern.compile(expression, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(inputStr);
if (matcher.matches()) 
{
//your code
}