如何在Android 2.2中使用正则表达式忽略变音符号?

问题描述:

我需要使用Android 2.2(API 8),我已经看到Normalizer.normalize(text, Normalizer.Form.NFD)仅适用于Android API 9.如何在Android 2.2中使用正则表达式忽略变音符号?

我可以添加到我的正则表达式中以忽略重音?每次您的帮助

SpannableStringBuilder stringBuilder = new SpannableStringBuilder(text); 

for (String keyword : keywords.keySet()) { 

    String caseInsensitiveRegex = "(?i)\\b" + keyword + "\\b"; 
    Pattern pattern = Pattern.compile(caseInsensitiveRegex); 
    Matcher m = pattern.matcher(stringBuilder); 

    while (m.find()){ 

     // Do some stuff 

    } 

} 

感谢;)

仅适用于Android API 9

Android是开源项目。没有什么能够阻止你抓住API 9的那部分并直接放入你的应用程序,所以你将不再依赖于API,而我目前在你的情况下没有遇到任何障碍。

+0

我不同意这种答案。如果它像你说的那么简单,那么每个人都会使用带有最新API代码的API级别1与所有Android版本兼容。正如我在Google PlayStore上看到的,几乎所有的应用程序都与API Level 1不兼容;) 无论如何,如果它很简单,在这种情况下,要抓住我想要使用的API9的一部分,我期待的答案因为这是API9的一部分。 – 2013-04-19 14:43:17

+0

答案没有什么不好。许多模块可以很容易地移植到后端 - 当然,并非所有API都会丢失,但是一旦您获得了所有基本能够完成的任务的源代码(但是,您需要付出的工作量有时会很高) – 2013-04-19 21:27:44