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

正则表达式的有关问题

2012-01-01 
正则表达式的问题我写了一个程序解析html我想得到html中body和/body 之间的内容我写了以下正则表达式S

正则表达式的问题
我写了一个程序
解析   html   我想得到   html   中   <body>   和   </body> 之间的内容
我写了以下正则表达式  
String   match_patten   =   " <\\s*(?i)body\\s*> (.*?) <\\s*/\\s*(?i)body\\s*> ";
然后执行:
Pattern   pattern   =   Pattern.compile(match_patten);
Matcher   matcher   =   pattern.matcher(content);
但是没有匹配成功。
是正则表达式的问题吗?

[解决办法]
可以匹配成功啊! 是不是你放进去的字符串不对啊!

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Tester {
public static void main(String argc[]){
String regex = " <\\s*(?i)body\\s*> (.*?) <\\s*/\\s*(?i)body\\s*> ";
Pattern pattern = Pattern.compile(regex);
String str = " <body> <a> tt </a> </body> ";
Matcher m = pattern.matcher(str);
System.out.println(m.matches());
}
}
[解决办法]
Pattern pattern = Pattern.compile( " <body> (.*) </body ");
Matcher m = pattern.matcher(content);
if(m.find())
System.out.println(m.group(1));

热点排行