正则表达式
Posted 1997wy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式相关的知识,希望对你有一定的参考价值。
正则表达式(本质是字符串)Pattern类
字符
字符:x
含义:代表的是字符x
例如:匹配规则为 "a",那么需要匹配的字符串内容就是 ”a”
字符:\
含义:代表的是反斜线字符‘‘
例如:匹配规则为"\" ,那么需要匹配的字符串内容就是 ””
字符类
字符类:[abc]
含义:代表的是字符a、b 或 c
例如:匹配规则为"[abc]",那么需要匹配的内容就是字符a,或者字符b,或字符c的一个
字符类:[^abc]
含义:代表的是除了 a、b 或 c以外的任何字符
例如:匹配规则为"[^abc]",那么需要匹配的内容就是不是字符a,或者不是字符b,或不是字符c的任意一个字符
字符类:[a-zA-Z]
含义:代表的是a 到 z 或 A 到 Z,两头的字母包括在内
例如:匹配规则为"[a-zA-Z]",那么需要匹配的是一个大写或者小写字母
字符类:[0-9]
含义:代表的是 0到9数字,两头的数字包括在内
例如:匹配规则为"[0-9]",那么需要匹配的是一个数字
字符类:[a-zA-Z_0-9]
含义:代表的字母或者数字或者下划线(即单词字符)
例如:匹配规则为" [a-zA-Z_0-9] ",那么需要匹配的是一个字母或者是一个数字或一个下滑线
预定义字符类:d
含义:代表的是 0到9数字,两头的数字包括在内,相当于[0-9]
例如:匹配规则为"d ",那么需要匹配的是一个数字
预定义字符类:w
含义:代表的字母或者数字或者下划线(即单词字符),相当于[a-zA-Z_0-9]
例如:匹配规则为"w ",,那么需要匹配的是一个字母或者是一个数字或一个下滑线
边界匹配器:^
含义:代表的是行的开头
例如:匹配规则为^[abc][0-9]$ ,那么需要匹配的内容从[abc]这个位置开始, 相当于左双引号
边界匹配器:$
含义:代表的是行的结尾
例如:匹配规则为^[abc][0-9]$ ,那么需要匹配的内容以[0-9]这个结束, 相当于右双引号
数量词
数量词:X?
含义:代表的是X出现一次或一次也没有
例如:匹配规则为"a?",那么需要匹配的内容是一个字符a,或者一个a都没有
数量词:X*
含义:代表的是X出现零次或多次
例如:匹配规则为"a*",那么需要匹配的内容是多个字符a,或者一个a都没有
数量词:X+
含义:代表的是X出现一次或多次
例如:匹配规则为"a+",那么需要匹配的内容是多个字符a,或者一个a
数量词:X{n}
含义:代表的是X出现恰好 n 次
例如:匹配规则为"a{5}",那么需要匹配的内容是5个字符a
方法
Boolean matches(String);是否匹配正则表达式
String regex=“[1-9][0-9]{4,14}”;
String qq="4131334";regex
boolean falg=qq.Matches()
//拆分字符串
String【】 split(String);
String r="-";
String phone="23123-2313231"
String[] str=phone.split(r);
for(int i=0;i<length;i++){
sysout(str[i]);
}
打印
23123
-2313231
替换
String replaceAll(String,“*”)
String reg=“【0-9】”;
String s=“abdc12”;
String a=reg。replaceAll(reg,“**”);
sysout(a);
打印abcd****
邮箱
String regex=“
”[a-zA-Z_0-9][email protected][a-zA-Z_0-9]+(\.[a-zA-Z_0-9]+)+”
”\[email protected]\w+(\.\w+)+”;
String qq=“[email protected]。com”
Boolean flag=qq。matches(regex);
sysout(flag)、、true
”
以上是关于正则表达式的主要内容,如果未能解决你的问题,请参考以下文章