1.判断是否符合正则表达式
boolean matches(String regex);判断当前字符串是否匹配参数regex指定的正则表达式
2.正则表达式的元字符
. 代表任意一个字符
\d 代表0~0的任何一个数字
\D 代表任何一个非数字字符
\s 代表空白字符
\S 代表非空白字符
\w 代表可用作标识符的字符,但不包括$
\W 代表不可用于标识符的字符
在正则表达式中,“.”代表任何一个字符,因此在正则表达式中如果想使用普通意义的点字符“.”,必须使用转义字符“\”。
3.正则表达式的限定符
? 0次或者1次
* 0次或多次
+ 0次或多次
{n} 正好出现n次
{n,} 至少出现n次
{n,m} 出现n~m次
4.方括号中元字符的含义
[abc] 表示a、b或者c
[^abc] 表示a、b和c之外的任何字符
[a-zA-Z] a~z或A~Z的任何字符
[a-d[m-p]] a~d或m~p的任何字符
[a-z&&[def]] d、e或者f
[a-z&&[^bc]] a~z之间不含b和c的所有字符
[a-z&&[^m-p]]a~z之间不含m-p的所有字符
5.判断字符串中汉字的个数
package Demo;
import java.util.regex.Pattern;
public class ChineseAmount {
public static void main(String[] args) {
String text = "我是爸爸,小可爱1111";
int amount = 0;
for(int i=0;i<text.length();i++){
boolean matches = Pattern.matches("^[\u4e00-\u9fa5]{0,}$",""+text.charAt(i));
System.out.println(matches);
if(matches){
amount++;
}
}
System.out.println("“"+text+"”中汉字的个数:"+amount);
}
}