c#中上一次已经使用了正则表达式,掌握了一些基本要领,那么在android里面也是相似的处理方法,在这里我是为了处理android读取service的解析所用到,读取“string=....;”省略号之间的内容,这里可以用正则表达是定位(我做的例子是一个天气预报的service信息的读取),整个方法如下:

/** * 正则表达式读取XML信息解译 * @param str * @return */private List<String> getContent(String str){List<String> pString=new ArrayList<String>();//这里有一个关键点,是用正则表达式.不包括换行的任意字符,如果想读取到换行的字符的话,需要在后面//加上Pattern.DOTALL,即可读取换行字符Pattern patten=Pattern.compile("\\=(.*?)\\;",Pattern.DOTALL);Matcher match=patten.matcher(str);while(match.find()){pString.add(match.group(1));}return pString;  }

在代码里面,我已经做了注释,这里是因为我在读取天气信息的时候,发现有一行<string>总是获取不到,我查看原service结果,发现这一行是因为有换行符,通过查阅资料发现“.”在正则表达式里面代表除了换行所有的字符,所以我的代码不能读取有换行的数据。

当然,我们可以通过代码控制它,在androidjava)里面在正则表达时候加上Pattern.DOTALL代表允许“.”包括换行符,这样即可解决。

详细的正则表达式的用法见下网页,仅供参考:http://zhanglu0574.blog.163.com/blog/static/1136510732012111861113431/

更多相关文章

  1. Android的TextView/EditText使用CharacterStyle&SpannableString
  2. android升级adt和sdk之后无法识别SDK Location的一个解决方式
  3. Debug Android(安卓)and Linux suspend and resume (中文)
  4. Android桌面小部件AppWidget(1)
  5. Android(安卓)时间戳和时间之间的转化
  6. android之网格布局GridLayout
  7. 读取指定路径数据库的方法
  8. Android常用功能代码块
  9. Android(安卓)KeyListener

随机推荐

  1. 学渣如何从零开始学Android
  2. Java语言程序设计(三)显示电脑系统当前时间
  3. 你对进程线程到底理解有多少
  4. 认知 | 学习编程的两大误区
  5. Java语言程序设计(四)类型转换及转义字符
  6. 总结 | 做公众号第一个月心得
  7. 感情 | 小鹿的大学恋爱史
  8. Java语言程序设计(五)从对话框获取输入及St
  9. Java中级进阶之集合框架比较
  10. 入门|你所不知道编程入门的重要性