Products
GG网络技术分享 2025-03-18 16:15 1
知道 非所有字符 是[^a-z]
但是 怎么表示非 某一个字符?
除了a字母以外:
Pattern pattern = Pattern.compile(\\\"[b-z&&[^a]]+\\\");
a-z,其实就是表示26个小写字母,如果是一个的话,就写一个好了。[^a]
可以反向,就是找包含某个字符
public static void main(String[] args) {Pattern pattern = Pattern.compile(\\\"(k)+\\\");
Matcher matcher = pattern.matcher(\\\"danielinbiti\\\");
if(matcher.find()){
System.out.println(\\\"包含有k\\\");
}else{
System.out.println(\\\"不含有k\\\");
}
}
针对字符的“非”:不容许出现某个或某几个字符。这是最简单的情况,直接用排除型字符组就可以对付。如果要匹配的单词是c开头、t结尾,中间有一个字符,但不能是u(也就是说,整个单词不能是cut),直接用『c[^u]t』就可以了,若中间的字符不能是a或u(也就是说,整个单词不能是cat或cut),则表达式改为『c[^au]t』。
先匹配某字母,在加个非啊[^a]
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为 regex、regexp 或 RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,该模式描述在搜索文本时要匹配的一个或多个字符串。
String.matches() 这个方法主要是返回是否匹配指定的字符串,如果匹配则为 true,反之为 false。
示例代码:
Demand feedback