正则表达式

开发工具与关键技术:visual Studio2015  正则表达式
作者:邓伟征
撰写时间:2019   年4月23  日
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
正则表达式是在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码。
正则表达式也是用于进行文字匹配的工具,就是搜索与正则表达式相匹配的部分,在字符串中可能不止一个部分满足给定的正则表达式,这个时候每个匹配都可以被称为匹配,匹配有三种意思,一种是形容词,比如一个字符串匹配一个表达式:一种是动词性的,比如说在字符串里匹配正则表达式:还有一种是名词性的,就是刚刚说到的字符串中满足给定的正则表达式的一部分;
最简单的正则表达式是由单一的字母,数字,汉字,下划线,标点符号组成,比如,aa,11,啊啊,__,””,这些在正则表达式的工具里面都能很容易被找到,但是,如果其他的单词或者句子包含这些字段也能被匹配到。这个时候要想精准的查找的话,只需要在他们的前后的加个\b.
Metacharacter(元字符):\b也是元字符其中的一种,他代表的是单词的开始和结束,就是开头和结尾
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190427203404944.PNG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDU0MTE2NQ==,size_16,color_FFFFFF,t_70)
 
“.”也是元字符,他的功能是匹配除了换行符以外的任意字符。
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190427203416566.PNG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDU0MTE2NQ==,size_16,color_FFFFFF,t_70)
\w:匹配字母,数字,下划线以及汉字
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190427203424520.PNG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDU0MTE2NQ==,size_16,color_FFFFFF,t_70)
\s:匹配任意的空白符
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190427203437402.PNG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDU0MTE2NQ==,size_16,color_FFFFFF,t_70)
“^”:匹配字符串的开始
“$:匹配字符串的结束
^和$一起使用的效果跟\b差不多,都匹配一个位置。^匹配你需要查找字符串的开头,匹配你要查找的结尾
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/2019042720345367.PNG)
字符转义:如果需要查找字符本身的话,比如.或*就会出现问题,因为你无法指定他们,使用\可以取消这些字符的特殊意义,所以需要查找.或*的话应该这样使用\.和\*。查找\的本身也同样需要。
重复:正则表达式中有特定的限定符,
*:重复零次或者更多次
+:重复一次或者更多次
?:重复零次或者一次
{n}:重复n次
{n,m}:重复n到m次
反义:需要查找不属于某个能简单定义的字符串的字符。这个时候就需要用到反义,反义就是跟之前那些元字符的用途正好相反。需要注意的是之前那些元字符都是小写,反义则是大写
\W:匹配容易不是字母,数字,下划线,汉字的字符
\S:匹配任意不是空白符的字符
\D:匹配不是数字的字符
\B:匹配不是单词开头或结束的位置
[^x]匹配除了x以外的任意字符
[^aeiou]:匹配除了aeiou这几个字母以外的任意字符

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值