一个正则解析html问题,请相助!
类似的html标签,有两种情况:
A:
<z:op alt="hello alt" title="demo" ... >
...<hello>Hello</hello>...
</z:op>
B:
<z:op alt="hello alt" title="demo" ... />
请问如何用正则来解析以下要求:
1、提取z:op中的op
2、提取z:op中的所有属性
3、如果为非闭合标签,则提取中间内容,如:...<hello>Hello</hello>...
------解决方案--------------------第一个不懂啥意思,
第二个:
//正则提取
public static List<String> getContext2(String html) {
List<String> resultList = new ArrayList<String>();
Pattern p = Pattern.compile("\"(.*?)\" ");//匹配"开头," 结尾的文档
Matcher m = p.matcher(html );//开始编译
while (m.find()) {
String str=m.group(1);
resultList.add(str);//获取被匹配的部分
}
return resultList;
}
不过说实在的,这个应该用dom解析更合适一些。
------解决方案--------------------第二种形式叫自闭合标签不是非闭合标签