Swift4 正则表达式

基本字符 (单个字符)

  • 不需要转义的字符
类别符号
大写字母ABCDEF...XYZ
小写字母abcdef...xyz
数字0123456789
其他`~!@#%&;:'",<>/
  • 需要进行转义的其他字符
转义方法符号
双反斜杠转义 『\\』$^*()-=+[{]}|.?
三反斜杠转义 『\\\\』\

元字符 (单类字符)

符号类别
.除换行符外的任意字符
\\w字母、数字、下划线或汉字
\\s任意空白字符,包括换页符、换行符、回车符、制表符、空格
\\d数字
\\f换页符
\\n换行符
\\r回车符
\\t制表符
\\v垂直制表符

反义(元字)符

符号类别
\\W非字母、数字、下划线或汉字
\\S非空白字符
\\D非数字字符
^非后接的字符,可同时接多个字符

限定字符

  • 接在字符或字符表达式后以对其进行限定修饰

贪婪限定字符

  • 当匹配符合多种情况时优先字符数多的情况
    字符串 :"123456789"
    正 则 :"^\d+"
    结 果 :123456789
符号意义
*重复单字符或表达式零次以上(包括零次)
+重复单字符或表达式一次以上(包括一次)
?重复单字符或表达式零或一次
{n}重复单字符或表达式n次
{n,}重复单字符或表达式n次以上(包括n次)
{n,m}重复单字符或表达式n到m次

懒惰限定符

  • 当匹配符合多种情况时优先字符数少的情况
    字符串 :"123456789"
    正 则 :"^\d+?"
    结 果 :1
符号意义
*?重复单字符或表达式零次以上(包括零次)
+?重复单字符或表达式一次以上(包括一次)
??重复单字符或表达式零或一次
{n,}?重复单字符或表达式n次以上(包括n次)
{n,m}?重复单字符或表达式n到m次

定位符

符号意义
^字符串的开始
$字符串的结束
\\b单词开始或结束
\\B非单词开头或结束的字符

连接符

符号意义
|用于连接两个字符或表达式,可理解为『或』
,用于连接两个字符,可理解为『或』
-用于选取一个字符域

分隔符

  • 对单个字符或表达式等进行分隔
符号意义
[]单字符分隔符 :对单字符进行分隔
()表达式分隔符 :对表达式进行分隔
{}限定符分隔符 :对限定符进行分隔

正则实例

  • 2到6位字母或数字组成的字符串
^[a-z,A-Z,0-9]|{2,6}$
2到6位字母或数字
  • 车牌号
^[a-z,A-Z]{1}[a-z,A-Z,\\d]|{5,}$
1位字母5位及以上字母或数字
  • 验证邮箱
^[A-Z0-9a-z._% -]@[A-Za-z0-9.-]\\.[A-Za-z]{2,4}$
字母、数字和._%-@字母、数字和.-.和2~4位数字

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值