[关键字: invalid escape sequence ()valid ones are \b\f---------]
private static void parse(String line) {
Pattern p= Pattern.compile("http://[^\s]+(asp|htm|html)$");
Matcher m=p.matcher(line);
while( m.find()){
System.out.println(m.group());
}
-------------"^http为红线 invalid escape sequence ()valid ones are \b\f---------
修改成Pattern p= Pattern.compile("http://[^\s]+(asp|htm|html)$"); 也还是红线
是什么原因呢
private static void parse(String line) {
Pattern p= Pattern.compile("http://[^\s]+(asp|htm|html)$");
Matcher m=p.matcher(line);
while( m.find()){
System.out.println(m.group());
}
-------------"^http为红线 invalid escape sequence ()valid ones are \b\f---------
修改成Pattern p= Pattern.compile("http://[^\s]+(asp|htm|html)$"); 也还是红线
是什么原因呢
除此以外为非法,因此被列为invalid
但是在正则模式中\s是合法的,因此作为字符串\\s的形式解析为\s后传达给正则解析器
关于网址正则,可以看看这个:
http://blog.csdn.net/jiaguanghan123/archive/2010/01/20/5217511.aspx