正则表达式,又称规则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)。正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个”规则字符串”,这个”规则字符串”用来表达对字符串的一种过滤逻辑。通常被用来检索、替换那些符合某个模式(规则)的文本。
[abc]
: a
、 b
或 c
(简单类)
[^abc]
:任何字符,除了 a
、 b
或 c
(否定)
[a-zA-Z]
: a
到 z
或 A
到 Z
,两头的字母包括在内(范围)
.
:任何字符(与行结束符可能匹配也可能不匹配)
\d
:数字: [0-9]
\D
:非数字: [^0-9]
\s
:空白字符: [ \t\n\x0B\f\r]
\S
:非空白字符: [^\s]
\w
:单词字符: [a-zA-Z_0-9]
\W
:非单词字符: [^\w]
\p{Lower}
小写字母字符:[a-z]
\p{Upper}
大写字母字符:[A-Z]
\p{ASCII}
所有 ASCII:[\x00-\x7F]
\p{Alpha}
字母字符:[\p{Lower}\p{Upper}]
\p{Digit}
十进制数字:[0-9]
\p{Alnum}
字母数字字符:[\p{Alpha}\p{Digit}]
\p{Punct}
标点符号:!”#$%&'()*+,-./:;
\p{Blank}
空格或制表符:[ \t]
^
:行的开头
$
:行的结尾
X ?
: X,一次或一次也没有
X *
: X,零次或多次
X +
: X,一次或多次
X {
n }
: X,恰好 _n_次
X {
n ,}
: X,至少 _n_次
X {
n ,
m }
: X,至少 _n_次,但是不超过 _m_次
XY: X_后跟 _Y
X |
Y: X_或 _Y
(
X )
:X,作为捕获组
(?:X) X,作为非捕获组
(?=X) X,通过零宽度的正 lookahead
(?!X) X,通过零宽度的负 lookahead
(?
(?
(?>X) X,作为独立的非捕获组
- 验证用户名和密码,要求第一个字必须为字母,一共6~16位字母数字下划线组成:(^[a-zA-Z]\w{5,15}$)
- 验证电话号码:xxx/xxxx-xxxxxxx/xxxxxxxx:(^(\d{3,4}-)\d{7,8}$)
- 验证手机号码:( ^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$ )
- 验证身份证号: (^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)
- 验证Email地址:(^\w+([-+.]\w+) @\w+([-.]\w+).\w+([-.]\w+)*$)
- 只能输入由数字和26个英文字母组成的字符串:(^[A-Za-z0-9]+$)
- 整数或者小数:(^[0-9]+(.[0-9 ]+){0,1}$)
- 中文字符的正则表达式:([\u4e00-\u9fa5])
- 金额校验(非零开头的最多带两位小数的数字):(^([1-9 ][0-9]*)+(.[0-9]{1,2})?$)
- IPV4地址:(((\d{1,2})|(1 \d{1,2})|(2[0-4]\d)|(25[0-5])).){3}((\d{1,2})|(1 \d{1,2})|(2[0-4]\d)|(25[0-5]))
Original: https://www.cnblogs.com/CYan521/p/16424103.html
Author: 再美不及姑娘你
Title: 正则表达式
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/715327/
转载文章受原作者版权保护。转载请注明原作者出处!