正则表达式

正则表达式,又称规则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)。正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个”规则字符串”,这个”规则字符串”用来表达对字符串的一种过滤逻辑。通常被用来检索、替换那些符合某个模式(规则)的文本。

[abc]abc(简单类)

[^abc]:任何字符,除了 abc(否定)

[a-zA-Z]azAZ,两头的字母包括在内(范围)

.:任何字符(与行结束符可能匹配也可能不匹配)

\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_次

XYX_后跟 _Y

X | YX_或 _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/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球