Regular Expression
正则表达式
Form:用/Re/包围
? -> 0,一个字符
- -> 0,1,多个字符
^ -> 字符串起始位置
$ -> 字符串结束位置
[0-9]单个数字
[a-z]单个字母
{3,15}3~15个字符
- ->前一个字符出现1+次
- ->前一个字符出现0+次
? ->前一个字符出现0,1次
转义
\cx 匹配由x指明的控制字符
\f = \cL = 匹配换页符
\n = \cJ = 匹配换行符
\r = \cM = 匹配回车符
\s = 匹配任何空白字符
\S = 匹配任何非空白字符
\t = \cl = 匹配制表符
\v = \cK = 匹配垂直制表符
$ 字符串结尾
() 子表达式首尾
- 0+
- 1+
. 除了换行\n以外任何单字符
[] 表达式首尾
? 0或1次
\ 转义符
^ 起始位置
{} 限定符首尾
| 两项间选择
限定符
{n}匹配n次
{n,}匹配至少n次
{n,m}匹配n~m次
常用组合
.* 单行
.*? 最小单行
定位符
\b 匹配单词边界
\B 匹配非单词边界
优先级
转义>方括号&圆括号>限定符>定位点/序列>或
常用
^[a-zA-Z0-9_]+$ // 所有包含一个以上的字母、数字或下划线的字符串
^[1-9][0-9]*$ // 所有的正整数
^-?[0-9]+$ // 所有的整数
^[-]?[0-9]+(.[0-9]+)?$ // 所有的浮点数
☝[-]?是可选负号的意思