首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

正则表达式~

2012-01-18 
正则表达式求助~~问题如下:我现在需要用正则表达式在一个HTML中提取一些数据,数据形式是tr中前一个td中内

正则表达式求助~~
问题如下:   我现在需要用正则表达式在一个HTML中提取一些数据,数据形式是tr中前一个td中内容是固定,后一个td不确定,但我需要的是后一个td的内容,例如:
      <tr>
            <td> 水果 </td>
            <td> 苹果 </td>
      </tr>
我同这则表达式 <.*?> (.*?水果)可以找到第一个td的数据,但后面一个td的数据改怎么样获取呢??因为后面一个是不确定的,就是他的value是不确定的!     请大家帮帮忙~~

[解决办法]
.*?水果 </td> <td> (.*?) </td> .*?
这样应该可以把
[解决办法]
String str = " <tr> <td> 水果 </td> <td> 苹果 </td> </tr> ";
Pattern p = Pattern.compile( " <tr> <td> .*? </td> ( <td> .* </td> ) </tr> ");
Matcher m = p.matcher(str);
while(m.find()){
System.out.println(m.group(1));
}
[解决办法]
发贴的时候,先搜下啊,这个都有好多问过了
抽取标签里的内容。
String s = " <td> aa </td> <td> bb </td> <td> 11125 </td> ";
String regex = " <(.+)> (.*?) </\\1> ";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(s);
while (m.find()) {
System.out.println(m.group(2));
}
其中的\\1表示为匹配的第1部分。
[解决办法]
String str = " <tr> <td> 水果 </td> <td> 苹果 </td> </tr> ";
System.out.println(str.replaceAll( "(?is).* <td> (.+?) </td> .* ", "$1 "));
[解决办法]
象这样的问题应该用javascript脚本来处理,最好在要处理td上设置个id属性,
然后用document.getElementById( " ").innerText就可以读到表格的内容啦!
不要什么问题都用你喜欢的方法,要用有用、高效的方法(建议)!

热点排行