java正则匹配html标签中的内容 java正则 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String s1 = "<tr align=\"center\"><td>一级</td><td>延误a</td><td>测试1</td><td></td></tr>"; System.out.println(s1.replaceAll(".*?<td>(.*?)</td><td>(.*?)</td><td>(.*?)</td>.*", "$1$2$3")); String s2 = "<span align=\"left\">提货abc少件</span>"; System.out.println(s2.replaceAll(".*?<span.*[^>]>(.*?)</span>.*?", "$1")); td、span只是个别标签,项目中还有很多别的标签,所以想写个通用的正则表达式String html = "<span align=\"left\">提货abc少件</span>";Pattern p1 = Pattern.compile("<(\\S*?)[^>]*>(.*?)</\\1>|<.*?/>");Matcher mt = p1.matcher(html);while(mt.find()){ System.out.println(mt.group(2));}打印出结果为:提货abc少件但是 <tr align=\"center\"><td>一级</td><td>延误a</td><td>测试1</td><td></td></tr>结果为:<td>一级</td><td>延误a</td><td>测试1</td><td></td>不知道哪有问题。 String reg = "(<.*>).*(</.*>)"; String s = "<1>hhh<ac>a</sa>bbbbb<b></b>ccc<>"; Pattern pa = Pattern.compile(reg); Matcher ma = pa.matcher(s); StringBuffer sb = new StringBuffer(); boolean rs = ma.find(); while(rs){ ma.appendReplacement(sb, ""); rs = ma.find(); } ma.appendTail(sb); System.out.println(sb.toString()); String reg = "<([^>]*)>"; String s = "<1>hhh<ac>a</sa>bbbbb<b></b>ccc<>"; Pattern pa = Pattern.compile(reg); Matcher ma = pa.matcher(s); StringBuffer sb = new StringBuffer(); boolean rs = ma.find(); while(rs){ ma.appendReplacement(sb, ""); rs = ma.find(); } ma.appendTail(sb); System.out.println(sb.toString());这个才对 如何让sublime text 2运行程序时打开命令行窗口? 公司让我写个JAVA设备的API调用,改怎么入手啊? 异常问题 大家说说这种情况,去大连或上海,月薪能拿到多少钱?? 请问这句java是什么意思 怎么用AWT或SWING实现google搜索框功能 求教!! public static long parseLong(String s, int radix)中的radix那位老大给解释一下? 关于cache的问题 关于JTable中Cell的焦点及输入控制问题。 jdbc链接oracle,查询数据时出错 求助 一个很神奇的问题
String s2 = "<span align=\"left\">提货abc少件</span>";
System.out.println(s2.replaceAll(".*?<span.*[^>]>(.*?)</span>.*?", "$1"));
Pattern p1 = Pattern.compile("<(\\S*?)[^>]*>(.*?)</\\1>|<.*?/>");
Matcher mt = p1.matcher(html);
while(mt.find()){
System.out.println(mt.group(2));
}打印出结果为:提货abc少件
但是 <tr align=\"center\"><td>一级</td><td>延误a</td><td>测试1</td><td></td></tr>
结果为:<td>一级</td><td>延误a</td><td>测试1</td><td></td>
不知道哪有问题。
String s = "<1>hhh<ac>a</sa>bbbbb<b></b>ccc<>";
Pattern pa = Pattern.compile(reg);
Matcher ma = pa.matcher(s);
StringBuffer sb = new StringBuffer();
boolean rs = ma.find();
while(rs){
ma.appendReplacement(sb, "");
rs = ma.find();
}
ma.appendTail(sb);
System.out.println(sb.toString());
String s = "<1>hhh<ac>a</sa>bbbbb<b></b>ccc<>";
Pattern pa = Pattern.compile(reg);
Matcher ma = pa.matcher(s);
StringBuffer sb = new StringBuffer();
boolean rs = ma.find();
while(rs){
ma.appendReplacement(sb, "");
rs = ma.find();
}
ma.appendTail(sb);
System.out.println(sb.toString());这个才对