正则表达式基础语法


在实际开发中,经常需要对字符串进行一些复杂的匹配,查找,替换等操作,通过正则表达式可以方便实现字符串复杂的操作。正则表达式是一串特定的字符组成的一个规则字符串。

正则表达式字符集

字符集 字符集描述
[abc] a,b,c 中任意一个字符
[^abc] 除了 a,b,c 之外的任意字符
[a-z] 表示 a,b,c…z 中的任意一个字符
[a-z]+ 表示由一个或多个 a,b,c…z 字符组成的字符串
[0-9] 表示 0 到 9 中间任意一个数字
[a-zA-Z0-9] a-z,A-Z,0-9 中任意一个字符

## 预定义字符集 ##
预定义字符集 预定义字符集描述
\d 任意一个数字字符,相当于[0-9]
\w 单词字符,相当于[a-zA-Z0-9]
\s 空白字符
\D 非数字字符
\W 非单词字符
\S 非空白字符
. 任意一个字符

## 数量词 ##
数量词 数量词描述
? 0 个到 1 个
* 0 个到任意个
+ 大于等于一个
{n} n 个
{n,} 大于等于 n 个
{n,m} n 到 m 个

## 标识 ##
数量词 数量词描述
^ 代表字符开始
$ 代表字符结束
() 代表分组,一系列正则表达式一个整体
分组时可以用“丨”代表“或”的关系

示例:
邮政编码:6 位数字

^[0-9][0-9][0-9][0-9][0-9][0-9]$
^\d\d\d\d\d\d\d$
^\d{6}$

电话号码:三种格式

  • 12345678910
  • 0086 12345678910
  • +86 12345678910
^(+86|0086)?\s?\d{11}$

电子邮箱:Bao_456@163.com

^[a-zA-Z0-9_]+@[a-zA-Z0-9_]+(.[a-zA-Z]+)+$

## [在程序中使用正则表达式](/2017/03/14/深入了解 String/#根据正则表达式操作字符串的方法)

[传送门:根据正则表达式操作字符串](/2017/03/14/深入了解 String/#根据正则表达式操作字符串的方法)


文章作者: CrazyBunQnQ
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC 4.0 许可协议。转载请注明来源 CrazyBunQnQ !
 上一篇
下一篇 
经典 Issues 集锦 经典 Issues 集锦
什么是经验?经验,就是遇到问题之后,你通过努力把它解决了,这就是你的经验! 在程序员的道路上,会遇到各种各样的问题和错误,我认为我不可能记住每一个问题的解决方式,好脑子不如烂笔头嘛,所以我要把我今后遇到的各种问题与错误都记录在这里~
2017-03-15
  目录