在编写处理字符串的程序或者网页时,经常会有查找符合某些复杂规则的字符串的需要,正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码,学会只用正则表达式,不仅可以提高程序的可阅读性,还可以使原本复杂的代码块在编写的时候事半功倍。
正则:其实就是一些特定的符号组成的规则来简化String操作,通过一些特定的字符组成一种限定规则用来验证字符串是否符合限定要求
正则表达式就是字母,数字以及书写在程序中的特殊符号组成
正则中的规则符号有:
(1)一般规则:
X 表示任意一个字符 通常用来限定正则区域中的某个位置上的特定字符
\ (\表示转义)表示反斜线
\t 表示制表符
[abc] 表示a,b,c中的某一个字母
[^abc] 表示除a,b,c外的任意一个字母
[a-zA-Z] 表示所有的大小写字母
[a-d[x-z]] 表示字母a-d或x-z之间的字符(并集)
[a-d&&[d-f]] 表示只包含d字符(交集)
[a-z&&[^a-c]] 表示只包含d-z之间的任意的小写字母
(2)预定义字符
. 表示任意一个字符
\d 表示0-9之间的数字
\D 表示[^0-9]
\w 表示所有的大小写字母,数字,下划线
\W 表示[^\w]
(3)边界符
^ 表示一行的开始
表示一行的结尾(4)数量词:?表示0次或1次∗表示0次或多次+表示1次或多次n表示n次n,表示最少n次(只能多不能少)n,m表示最少n次最多m次(限定范围)正则的功能(4种):匹配切割获取替换正则中的组:被小括号包含的内容称为正则中的组,如果不在同一个正则表达式中,想要引用前面封装的规则,使用
组名 例: $2(表示引用第2组)
正册表达式:符合一定规则的表达式
作用:用于专门操作字符串
正册表达式:符合一定规则的表达式
作用:用于专门操作字符串
class Demo1{
publicstatic void main(String[] args)
{
chekQQ();
}
对QQ号码进行校验,
要求:5~15位,0不能开头,只能是数字
publicstatic void chekQQ(){
Stringqq=”123454d”;
intlen=qq.length();
if(len>=5&& len<15){
if(!qq.startsWith(“0”)){
char[]arr=qq.toCharArray();
booleanflag=true;
for(intx=0;x