天天看點

java正規表達式不包含-,java正規表達式找出不包含特定字元串

推薦文章:http://xixian.iteye.com/blog/1323630      和http://www.jb51.net/article/52491.htm

自己的經驗是不能和正常的正規表達式一起混用。

代碼如下:是不能正确判斷的

public class Test {

public static void main(String[] args) {

String url ="http://so.xywy.com/zonghe.php?keyword=ganmao=2page";

String PdReg= "http://so.xywy.com/(zonghe|yisheng).php[?]keyword=.*^(?!.*page).*";

Pattern p1 = Pattern.compile(PdReg);

Matcher m = p1.matcher(url);

System.out.println(m.matches());

}

}

代碼如下:結果是可以得

public class Test {

public static void main(String[] args) {

String url ="http://so.xywy.com/zonghe.php?keyword=ganmao=2page";

String PdReg= "http://so.xywy.com/(zonghe|yisheng).php[?]keyword=.*";

//^(?!.*page).*

Pattern p1 = Pattern.compile(PdReg);

Matcher m = p1.matcher(url);

System.out.println(m.matches());

}

}

代碼如下:結果是可以得

public class Test {

public static void main(String[] args) {

String url ="http://so.xywy.com/zonghe.php?keyword=ganmao=2page";

String PdReg= "^(?!.*page).*";

//http://so.xywy.com/(zonghe|yisheng).php[?]keyword=.*

Pattern p1 = Pattern.compile(PdReg);

Matcher m = p1.matcher(url);

System.out.println(m.matches());

}

}

結論是兩種形式不能混用