正则表达式,匹配非某字符或单词

来源:互联网 发布:华科网络自助服务中心 编辑:程序博客网 时间:2024/05/16 01:42

在正则表达式中,想不匹配某字符可以用:

[^a]* 表示匹配除a以外的所有字符

[^abc]* 表示匹配除a、b、c以外的所有字符,注意,是字符,而不是字符串,即a,b,c字符均不匹配


而当我们要不匹配某字符的时候,可以这样用:

((?!win).)* 表示匹配除单词win的其它所有字符


匹配某词在某词的前面,如:销售在生产的前面:

String string = "aaaa生p产aaaa销售aa生产";String string2 = "aaaa生产aaaa销售aa生产";System.out.println(string.matches("((?!生产).)*销售.*生产.*"));System.out.println(string2.matches("((?!生产).)*销售.*生产.*"));

上面输出:

true
false




0 0
原创粉丝点击