正则表达式:
是一个有规律的,有特定意义的一串字符,通常用来
进行匹配,查找等操作。
常用符号:
*:任意字符。
[abc]:表示abc中的任意一个字母
[^abc]:表示除了abc之外任意字符
[0-9]:表示0-9中的任意一个数字
[a-z]:表示a-z中的任意一个字母
[0-9a-zA-Z_]:表示这些字符中的任意一个
[a-z&&[^abc]]:表示a-z中除了abc之外的任意一个字母
[\d]:表示0-9中的任意一个数字
[\D]:表示非数字中任意一个字符
[\w]:表示单词字符中任意一个 相当于[0-9a-zA-Z_]
[\W]:除了单词字符外的任意一个
\s:表示[\n\t\r\f],空白
\S:非空白
\d*:表示有0个或0个以上数字
\d?: 表示没有或者有1个的数字
\d+:表示有1个或者是1个以上的数字
\d{n}:标有有n个数字
\d{n,}:表示有n个或n个以上的数字
\d{n,m}:表示有n-m个数字
用()进行分组
():表示分组
"(186)|(137)\d{8}":
表示匹配186的手机号,或者137的手机号
"^":表示从头开始检查字符串是否匹配正则表达式
"$": 表示检查字符串的结尾是否匹配正则表达式
"^[\d]{8}$":表示从头到尾检查字符串是否完全匹配
在写字符串时,想表达"\"这个字符,必须在前面添加转义字符
是一个有规律的,有特定意义的一串字符,通常用来
进行匹配,查找等操作。
常用符号:
*:任意字符。
[abc]:表示abc中的任意一个字母
[^abc]:表示除了abc之外任意字符
[0-9]:表示0-9中的任意一个数字
[a-z]:表示a-z中的任意一个字母
[0-9a-zA-Z_]:表示这些字符中的任意一个
[a-z&&[^abc]]:表示a-z中除了abc之外的任意一个字母
[\d]:表示0-9中的任意一个数字
[\D]:表示非数字中任意一个字符
[\w]:表示单词字符中任意一个 相当于[0-9a-zA-Z_]
[\W]:除了单词字符外的任意一个
\s:表示[\n\t\r\f],空白
\S:非空白
\d*:表示有0个或0个以上数字
\d?: 表示没有或者有1个的数字
\d+:表示有1个或者是1个以上的数字
\d{n}:标有有n个数字
\d{n,}:表示有n个或n个以上的数字
\d{n,m}:表示有n-m个数字
用()进行分组
():表示分组
"(186)|(137)\d{8}":
表示匹配186的手机号,或者137的手机号
"^":表示从头开始检查字符串是否匹配正则表达式
"$": 表示检查字符串的结尾是否匹配正则表达式
"^[\d]{8}$":表示从头到尾检查字符串是否完全匹配
在写字符串时,想表达"\"这个字符,必须在前面添加转义字符
转义字符:\
有一些特殊字符都需要被转义,才行。" ' \
String支持正则表达式:
1:matchs(String reg):
参数为正则表达式,用来判断字符串是否匹配正则表达式
匹配:返回true
不匹配:返回false
2:split(String reg):
用来拆分字符串:用符合正则表达式的子字符串拆分成字符串数组。
返回值类型是字符串数组。
如果字符串的首位就符合正则表达式,会拆出一个空字符串""元素
在字符串的末尾如果符合了,不会拆分出一个空字符串元素。
3:replaceAll(String reg,String new):
作用是使用new这个字符串替换字符串中符合reg的子串