正则表达式
正则表达式:Regular expression
贪官 字符串 "123456"
法律 正则表达式 \\d+
Pattern 表示正则表达式,经过编译得到正则表达式
Matcher 匹配器
---------------------------------------------------
java在字符串提供了四个方法,直接支持正则表达式
matches
replaceALl
replaceFirst
split
---------------------------------------------------
正则语法:
[ab] a或者b
[a-z] 所有小写字母
[a-zA-Z] 所有字母
[a-zA-Z0-9_] 数字、字母、下划线 单词字符串
[^ab] 不是a,也不是b ^放在方括号中,表示 非
\w word:单词字符串 等价于[a-zA-Z0-9_]
\W 非单子字符串 等价于[^\w]
\d d:digtial
\D 非数字
\s s:space 空白字符:空格、\r、\n、\t
. 表示任意字符串 除了:\r、\n
\. 表示真正的点
^ 开头
$ 结尾
数量词
a{2} 正好2个a
a{2,} 至少2个
a{2,5} 至少2个,最多5个
a+ 至少一个 等价于a{1,}
a* 至少一个 等价于a{0.}
a? 0个或1个
abc|d abc或d
ab(c|d) c或d
【案例】
package com.atguigu.bean;
/*
正则表达式:Regular expression
贪官 字符串 "123456"
法律 正则表达式 \\d+
Pattern 表示正则表达式,经过编译得到正则表达式
Matcher 匹配器
---------------------------------------------------
java在字符串提供了四个方法,直接支持正则表达式
matches
replaceALl
replaceFirst
split
---------------------------------------------------
正则语法:
[ab] a或者b
[a-z] 所有小写字母
[a-zA-Z] 所有字母
[a-zA-Z0-9_] 数字、字母、下划线 单词字符串
[^ab] 不是a,也不是b ^放在方括号中,表示 非
\w word:单词字符串 等价于[a-zA-Z0-9_]
\W 非单子字符串 等价于[^\w]
\d d:digtial
\D 非数字
\s s:space 空白字符:空格、\r、\n、\t
. 表示任意字符串 除了:\r、\n
\. 表示真正的点
^ 开头
$ 结尾
数量词
a{2} 正好2个a
a{2,} 至少2个
a{2,5} 至少2个,最多5个
a+ 至少一个 等价于a{1,}
a* 至少一个 等价于a{0.}
a? 0个或1个
abc|d abc或d
ab(c|d) c或d
*/
public class RegExpDemo {
public static void main(String[] args) {
//需求:判断手机号码格式是否正确
//手机号11位,第一位数字“1”,第二位数字“3-9”
String s = "18603071631";
boolean b = s.matches("1[3-9]\\d{9}");
System.out.println(b);
}
}