当前页面: 开发资料首页 → J2SE 专题 → 求助:正则表达式的用法
求助:正则表达式的用法
摘要: 求助:正则表达式的用法
请问哪个熟悉正则表达式的高手知道,怎么判断一个网站内的源代码用了多少个标签?
up...期待中
用UE或其他工具搜索一下就可以咯
这个是一个题目,要用JAVA写出来的```
规则要遵守java的RE规则吗?
如果只考虑这一种情况是比较简单的,主要是看可能的情况有多少种,比如大小写,有些地方可以有多个空格等。不过这种晴空可以通过预处理来减少复杂度。如匹配前把所有字符变成小写,把多个whitespace替换成一个空格等^_^
import java.net.*;
import java.io.InputStream;
import java.util.regex.*;
public class sina{
public static void main(String[] args)throws Exception{
int length=0;
URL url=new URL("http://www.sina.com");
URLConnection cn=url.openConnection();
InputStream in=cn.getInputStream();
byte[] buffer=new byte[2048];
StringBuffer sb=new StringBuffer();
while((length=in.read(buffer,0,2048))!=-1)
sb.append(new String(buffer,0,length));
System.out.println(sb.toString());
Pattern p = Pattern.compile("/p{Space}*[a|A]//p{Space}*[h|H][r|R][e|E][f|F]//p{Space}*=//p{Space}*/".*?/"//p{Space}*>");
Matcher m = p.matcher(sb);
int i=0;
while(m.find()){
i++;
}
System.out.println(i);
}
}
我自己写了这样的,有高手看下这样写是对的吗?