各位大虾,
我现在要取<p align=center style='text-align:center;line-height:150%'>标签中的style性的值,或者是这样的标签
<p>,里面的什么也没有的标签。 求一个正则表达式。小弟不胜感激!谢谢了。
我现在要取<p align=center style='text-align:center;line-height:150%'>标签中的style性的值,或者是这样的标签
<p>,里面的什么也没有的标签。 求一个正则表达式。小弟不胜感激!谢谢了。
String regex="style\\s*=\\s*.(([^\\>:;]+:[^\\>:;]+);?){0,}";
Pattern pattern=Pattern.compile(regex);
Matcher m=pattern.matcher("<p align=center style='text-align:center;line-height:150%'>");
while(m.find()){
System.out.println(m.group());
}
另外一种是<p align=center style="">中的style的内容谢谢
如果这个页面中有很多的<p.....>时,我只要每个P中的style内容,应该加上P吧。有缺陷
String str = "<p align=center style='text-align:center;line-height:150%'>123</p><p>456这个是纯p</p><p align=\"right\">789</p>";
Pattern p = Pattern.compile("(?<=<p[^>]{0,200}style=')[^']*(?='[^>]*>)|(?<=<p>).*?(?=</p>)");
Matcher m = p.matcher(str);
while(m.find()){
System.out.println(m.group());
}
}这样的么?好别扭啊
<p.*style\\s*=\\s*.(([^\\>:;]+:[^\\>:;]+);?){0,}";
这个代码匹配<p>这个标签时,匹配不出来。谢谢
这个<p>是否能匹配是指里面没有其他属性,而不是说该 标签下有内容
String matcher = "\\<p\\s?([^\\>]+(?<!style)\\=[^\\>\\=\\s]+\\s?)*\\>";
String matchee = "<p align=center id='style' tt='text-align:center;line-height:150%'>ddddddd<p>ttttttttt<p style='ffff'>";
Pattern p = Pattern.compile(matcher);
Matcher m = p.matcher(matchee);
while(m.find()){
System.out.println(m.group());
}
运行的结果为:
<p align=center id='style' tt='text-align:center;line-height:150%'>
<p>为什么这个”<p style='ffff'>“没有找出来?谢谢!