项目中搜索功能需要将搜索结果的中的关键字进行标红,但是如果遇到搜索内容中的英文字母,大小写就不好处理了。


以下是解决方法:

   /** * 搜索关键字标红 * @param title * @param keyword * @return */public static String matcherSearchTitle(String title,String keyword){String content = title;  String wordReg = "(?i)"+keyword;//用(?i)来忽略大小写  StringBuffer sb = new StringBuffer();  Matcher matcher = Pattern.compile(wordReg).matcher(content);  while(matcher.find()){  //这样保证了原文的大小写没有发生变化  matcher.appendReplacement(sb, ""+matcher.group()+"");}  matcher.appendTail(sb);  content = sb.toString(); Log.i("Utils", content);//如果匹配和替换都忽略大小写,则可以用以下方法//content = content.replaceAll(wordReg,""+keyword+"");  Log.i("Utils", content);return content;}



更多相关文章

  1. Android Button,TextView的显示大小写问题
  2. Android Fresco图片处理库用法API英文原文文档3(Facebook开源Andr
  3. OpenGL ES教程I之创建OpenGL视图(原文对照)
  4. OpenGL ES教程V之更多3D模型(原文对照)
  5. 【Android开发学习43】OpenGL ES教程VI之纹理贴图(原文对照)
  6. OpenGL ES教程II之创建多边形(原文对照)
  7. OpenGL ES教程IV之着色(原文对照)
  8. OpenGL ES教程III之移动变换(原文对照)
  9. OpenGL ES教程VI之纹理贴图(原文对照)

随机推荐

  1. android的binder机制研究(C++部分)
  2. 一定能成功的Android(安卓)NDK环境配置教
  3. 安卓手机恶意代码——Samsapo
  4. Android(安卓)之如何优化 UI 渲染(下)
  5. Android待机的suspend_sys_sync_queue分
  6. Android(安卓)MediaPlayer音频播放器详解
  7. Android(安卓)进程间通信之binder - 实战
  8. 推荐阅读:Android开发者的博客
  9. android的消息处理机制(图+源码分析)——Lo
  10. Android事件分发机制四:学了事件分发有什