正则表达式: 按照一定的规则组成的一个表达式, 作用主要来匹配字符串
表达式组成: 由元字符或者限定符组成的一个式子
元字符:
. 表示的是: 除了\n以外的任意一个字符 例: "aa12"这个字符串中, 有任意一个字符就匹配成功
[] 表示的是: 范围
[0-9]表示的是0-9之间任意一个数 例 : “abcd”–>[0-9] 不成立
例:100-199这个区间–>[1][0-9][0-9]
[159]表示的是1,5,9这三个数的任意一个数
[a-z]表示的是小写字母中的任意一个
[A-Z]表示的是大写字母中的任意一个
[0-9a-zA-Z]表示的是所有数字或者所有字母中的任意一个 例: “@” -->不成立
[] 另一个含义: 把正则表达式中的元字符的意义干掉 [.] —>代表的只是一个点
| 表示的是: 或者 例 : [0-9]|[a-z]表示的是要么是一个数字, 要么是一个小写字母
()表示的是: 分组和提升优先级 ([0-9])|([a-z]) 先从左边开始匹配
限定符, 也叫元字符
* 表示的是前面的表达式出现0次到多次 例 ?[a-z][0-9])* —>“abcdef” 返回true
+ 表示的是前面的表达式出现了1次到多次 例 : ([a-z][0-9])+ —>“abcdef” 返回false
例: [a-z][9]+ -->“asd9234324” 返回true
? 表示的是前面的表达式出现了0次到一次 例: [a-z][9]? -->“asd92394324” 返回true
{} 表示的是更加明确前面的表达式出现的次数
{0,} 表示的是前面的表达式0次到多次 跟 * 一样
{0,1} 表示的是前面的表达式0次到1次 跟 ? 一样
{4} 表示的是前面的表达式4次
{,10} ===>错误
^ 表示的是以什么开始, 或者取非
^[a-z]表示的是以小写字母开始
[^a-z]表示的是 取非, 即非小写字母
[^0-9A-Za-z]表示的是 表示的特殊符号和汉字
$ 表示的是以什么结束 例 : [0-9][a-z]$ 必须以小写字母结束
严格模式 : ^[0-9]+[a-z]{1,5}$ 以数字开始, 字母结束 例 : "1asd2398a" 返回false
\d 数字中任意一个
\D 非数字中任意一个
\s 空白符中一个
\S 非空白符中一个
\w 非特殊符号 _
\W 特殊符号
\ 转义符