正则表达式

每一个成功者都有一个开始。勇于开始,才能找到成功。


本讲内容:正则表达式


一、正则表达式介绍

主要用于字符串的模式分割、匹配、查找及替换操作。


二、正则表达式与通配符的区别

正则表达式是包含匹配(只要含有就列出),通配符是完全匹配。

1、通配符
匹配任意内容(任意多个字符)
匹配任意一个内容
[] 匹配中括号中的一个字符


三、基础正则表达式的元字符

1、*      前一个字符匹配0次或任意多次
譬如: a*      匹配所有内容,包括空白行(类似于通配符*)
   aa*     匹配至少包含有一个a的行
   aaa*   匹配至少包含两个连续a的字符串

2、.     匹配除了换行符外任意一个字符(相当于通配符?)

譬如:s..d  会匹配在s和d这两个字母之间有两个字符的单词
   s.*d  匹配在s和d字母之间有任意字符
           .*   匹配所有内容(相当于通配符*)

3、匹配行首,匹配行尾
譬如:^M  匹配以大写"M"开头的行
   n$  匹配以小写"n"结尾的行
           ^$   匹配空白行

4、[]  匹配中括号中指定的任意一个字符,只匹配一个字符
譬如:[aoeiu]匹配任意一个元音字母,[0-9]匹配任意一个数字,[a-z][0-9]匹配小字字母和一位数字构成的两位字符
5、
[^] 匹配除中括号的字符以外的任意一个字符。
譬如:[^0-9]匹配任意一位非数字字符,[^a-z]表示任意一位非小写字母字符

^[^a-z]  匹配不用小写字母开头的行,^[^a-zA-Z] 匹配不用字母开头的行

6、转义符 用于取消其特殊符号的含义,使其成为一个普通的字符
譬如:\.$ 表示以'.'结尾的行


7、\{n\} 表示其前面的字符恰好出现n次
譬如:[0-9]\{4\}匹配4位数字,[1][3-8][0-9]\{9\}匹配手机号码


8、\{n,\}  表示其前面的字符出现不小于n次,
譬如:[0-9]\{2,\}表示两位及两位以上的数字


9、\{n,m\}表示其前面的字符至少出现n次,最多出现m次。
譬如:[a-z]\{6,8\}匹配6到8位的小写字母


示例:

匹配手机号码:[1][3-8][0-9]\{9\}
匹配日期格式:[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}
匹配IP地址:[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值