很久不写正则表达式了,网上看到个面试题关于提取, 各种乱七八糟的解法。
正确的,应该是这样吧:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class TestReg {
static void ParseHref(String str) {
System.out.println(str);
System.out.println("开始匹配");
Pattern pattern = Pattern.compile("(]*)href=[\"|\']([^\"\']*)[\"|\']([^>]*)>)", Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(str);
while(matcher.find()) {
System.out.println("group:" + matcher.group());;
for(int i = 0 ; i <= matcher.groupCount() ; i++){
System.out.println(""+ i + ": " + matcher.group(i));
}
}
}
public static void main(String[] args) {
String str = "123123 href=\"error.google.com/sadfs/\"55555";
ParseHref(str);
String s="
企业推广 | 搜索风云榜 | 关于百度 | About Baidu
©2008 Baidu 使用百度前必读 京ICP证030173号