正则表达式:正确规则的表达式
boolean matches(String regex) 当前字符串是否匹配给定的正则表达式
String replaceAll(String regex,String replacement) 使用 replacement 替换当前字符串中所有符号正则表达式的内容
String[] split(String regex) 根据给定的正则表达式拆分当前字符串
注意: .的正则写法必须为.
正则表达式 规则 规则: x 含义:代表的是字符 x
规则: \ 含义:代表的是斜线字符’’
规则: t 含义:制表符
规则: n 含义:换行符
规则: r 含义:回车符
规则: [abc] 含义:代表的是字符 a、 b 或 c
规则: [^abc] 含义:代表的是除了 a、 b 或 c 以外的任何字符
规则:[a-zA-Z] 含义:代表的是 a 到 z 或 A 到 Z,两头的字母包括在内
规则:[0-9] 含义:代表的是 0 到 9 数字,两头的数字包括在内
规则:[a-zA-Z_0-9]含义:代表的字母或者数字或者下划线(即单词字符)
规则: . 含义:代表的是任何字符
规则: d 含义:相当于[0-9]。代表的是 0 到 9 数字, 0 和 9 包括在内。
规则: w 含义:相当于[a-zA-Z_0-9]。 代表的字母或者数字或者下划线
边界匹配器: ^ 含义:代表以某些内容开头
边界匹配器: $ 含义: 代表以某些内容结尾
边界匹配器: \b 含义:代表的是单词边界。? 注意:不能单独使用,几乎不使用
数量词: X? 含义:代表的是 X 出现 0~1 次
数量词: X* 含义:代表的是 X 出现 次数≥0
数量词: X+ 含义:代表的是 X 出现 次数≥1
数量词: X{n} 含义:代表的是 X 出现 次数= n
数量词: X{n,} 含义:代表的是 X 出现 至少 n 次
数量词: X{n,m} 含义:代表的是 X 出现至少 n 次,但是不超过 m 次
逻辑运算符: XY 含义:代表的是 X 后紧跟着 Y
逻辑运算符: X|Y 含义:代表的是 X 或 Y
逻辑运算符: (X) 含义:代表的是() 括号内的数据作为一个整体出现
常用
1.3 常见正则表达式
表达式 描述
^[a-z0-9_-]{3,16}$
用户名
^[a-z0-9_-]{6,18}$
密码
^([a-z0-9_.-]+)@([da-z.-]+).([a-z.]{2,6})$
电子邮箱
[u4e00-u9fa5]
匹配中文字符的正则表达式
练习:练习:
1、
举例:校验 qq 号码.
1:要求必须是 5-15 位数字
2:0 不能开头
代码演示:
String qq = “604154942”;
String regex = “[1-9][0-9]{4,14}”;
boolean flag2 = qq.matches(regex);
2、
举例:校验手机号码
1:要求为 11 位数字
2:第 1 位为 1,第 2 位为 3、4、5、7、8 中的一个,后面 9 位为 0 到 9 之间的任意数字。
代码演示:
String phone = “18810022666”;
String regex = “1[34578][0-9]{9}”;
boolean flag = phone.matches(regex);
3、
举例:将字符串中的数字全部替换成!号
String str = “1a2b3c4d”;
str = str.replaceAll("d", “!”);
System.out.println(str);
4、
//根据空格切割字符串
String str = “我 很 帅”;
String[] arr = str.split(" “);
for(int i=0;i
System.out.println(arr[i]);
}
5、注意:. .的正则写法必须为 . .
//根据.切割 IP 地址
String str = “192.168.11.88”;
String[] arr = str.split(”.");
for(int i=0;i
System.out.println(arr[i]);
}



