奇怪的正则表达式!在线等解答

orrin 2007-05-10 11:45:53
public static void main(String[] args){
String tmp="<div>\n";
tmp+="adfasfdf\n";
tmp+="adfasf\n";
tmp+="</div>";
RE re = new RE("<div>(.|\r|\n)+</div>");
for(int i=0;i<re.getParenCount();i++){
System.out.println(i+"---"+re.getParen(i));
}
}

我想取出div标记中间的内容,但不成功,不知道错在哪里,当然这是一个简化过的,实际比这个内容复杂.
...全文
360 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
CrazyGou 2007-05-17
  • 打赏
  • 举报
回复
RE re = new RE("<div>((.|[\\n])*)</div>");
orrin 2007-05-17
  • 打赏
  • 举报
回复
没人理我了?
漂白猪 2007-05-10
  • 打赏
  • 举报
回复
RE re = new RE("<div>[.|\r|\n]+</div>");
这样试一下
orrin 2007-05-10
  • 打赏
  • 举报
回复
这是举个例子,实际之中,并不一定是DIV标记
For_suzhen 2007-05-10
  • 打赏
  • 举报
回复
是不是特殊符号的原因
你为什么用正则呢?取div之间的内容为什么不用
var xx = document.getElementsByTag("div");
var contents = xxx.innerText或xxx.innerHtml呢?
或document.all.div1.innerText或者 document.all.div1.innerHTML

leon_natali 2007-05-10
  • 打赏
  • 举报
回复
up
orrin 2007-05-10
  • 打赏
  • 举报
回复
谢谢,上面的朋友,那如果内容里包含(<):符号呢?
public static void main(String[] args){
String tmp="<div>\n";
tmp+="<table>adfasfdf\n";
tmp+="adfasf\n";
tmp+="</div>";
RE re = new RE("<div>(. ¦\r ¦\n)+</div>");
for(int i=0;i<re.getParenCount();i++){
System.out.println(i+"---"+re.getParen(i));
}
}
zealVampire 2007-05-10
  • 打赏
  • 举报
回复
CrazyGou可能是对的,要去掉<和>试试
CrazyGou 2007-05-10
  • 打赏
  • 举报
回复
RE re = new RE("<div>([^<]+)</div>")
orrin 2007-05-10
  • 打赏
  • 举报
回复
无匹配内容
orrin 2007-05-10
  • 打赏
  • 举报
回复
不成,无反应...

81,115

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧