项目要用java和正则表达式进行解析html的内容,谁能帮我写段匹配表格table的,不且该table里面没有嵌套table的,能否把这样的表格内容匹配出来比如
<html>...
<table align="center" border="0" id="table1">
<tr>
<td align="center">
<tabld id="table2">...</table>
</td>
<td align="center">
<tabld id="table3">...</table>
</td>
..
</table>
</html>想用正则表达式把table2和table3找出来,但是不能把table1也取出来,哪位大哥能帮忙下
<html>...
<table align="center" border="0" id="table1">
<tr>
<td align="center">
<tabld id="table2">...</table>
</td>
<td align="center">
<tabld id="table3">...</table>
</td>
..
</table>
</html>想用正则表达式把table2和table3找出来,但是不能把table1也取出来,哪位大哥能帮忙下
import java.util.regex.Pattern;public class Test5 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str =" <html>...\n" +
"<table align=\"center\" border=\"0\" id=\"table1\">\n" +
"<tr>\n" +
"<td align=\"center\">\n" +
"<table id=\"table2\">...</table>\n" +
"</td>\n" +
"<td align=\"center\">\n" +
"<table id=\"table3\">...</table>\n" +
"</td>\n" +
"<td align=\"center\">\n" +
"<table id=\"table4\">" +
"<tr><td>xxxxx<p></p></td></tr>" +
"</table>\n" +
"</td>\n" +
"..\n" +
"</table>\n" +
"</html>"; Pattern p = Pattern.compile("(<table\\s*id=\"table[^1]\"\\s*>.*</table>)",Pattern.MULTILINE);
Matcher m = p.matcher(str);
while (m.find()) {
System.out.println(m.group(1));
}
}}
<head>
<title>test</title>
<script type="text/javascript">
window.onload = function(){
var str = document.getElementById('test').innerHTML;
var reg = /<table[^>]*>(?:(?!<table)[\S\s])*?<\/table>/g;
var s = str.match(reg);
for(var i in s) {
alert(s[i])
}
};
</script>
</head>
<body>
<div id="test">
<table align="center" border="0" id="table1">
<tr>
<td align="center">
<table id="table2">
<tr>
<td>
111
</td>
</tr>
</table>
</td>
<td align="center">
<table id="table3">
<tr>
<td>
222
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</body>
</html>