一、正则表达式
1、正则表达式介绍
正则表达式是由一些具有特殊含义的字符组成的字符串,多用于查找、替换符合规则的字符串。在表单验证、Url映射等处都会经常用到。
2、元字符
元字符:即为有特定含义的字符
3、反义字符
反义字符:多用于查找除某个字符以外其他任意字符均可以的情况
4、限定字符
限定字符多用于重复匹配次数
5、转义字符
在实际的开发中,可能会遇到要比配元字符的情况,这个时候就需要进行字符转义,如元字符 . * \ 需要转换为. * \
6、字符分枝
字符分枝多用于满足不同情况的选择,用“|”将不同的条件分割开来,比如有些固定电话区号有三位,有些有四位,这个时候可以采用字符分枝
7、字符分组
字符分组多用于将多个字符重复,主要通过使用小括号()来进行分组
8、懒惰匹配和贪婪匹配
贪婪匹配:正则表达式中包含重复的限定符时,通常的行为是匹配尽可能多的字符。
懒惰匹配:有时候需要匹配尽可能少的字符。
懒惰限定符:
9、后向引用
后向引用用于重复搜索前面某个分组匹配的文本。
使用小括号指定一个子表达式后,匹配这个子表达式的文本(也就是此分组捕获的内容)可以在表达式或其它程序中作进一步的处理。默认情况下,每个分组会自动拥有一个组号,规则是:从左向右,以分组的左括号为标志,第一个出现的分组的组号为1,第二个为2,以此类推。
10、零宽断言
有时候需要查找某些匹配之前或之后的东西,这个时候就需要用到们像\b,^,$那样用于指定一个位置,这个位置应该满足一定的条件(即断言),因此它们也被称为零宽断言。
11、其他语法
二、案例
1.在要求数字+字母的格式的时候,利用正则表达式可以写成
2.在要求数字+字母+特殊符的格式的时候,利用正则表达式可以写成
3.在严格要求的情况下,一般要求输入的都是数字+小写字母+大写字母+特殊符的格式的时候,利用正则表达式可以写成