首页 > 正则表达式(1)

正则表达式(1)

 

  • 正则表达式的概念

  正则表达式是一个字符串,使用单个字符串来描述、用来定义匹配规则,匹配一系列符合某个句法规则的字符串。在开发中,正则表达式通常被用来检索、替换那些符合某个规则的文本

  • 正则表达式的匹配规则

字符类:[abc] 

 含义:代表的是字符a、b 或 c。 

 例如:匹配规则为”[abc]” ,那么需要匹配的内容就是字符a,或者字符b,或字符c的一个。

 

字符类:[^abc] 

 含义:代表的是除了 a、b 或 c以外的任何字符。 

 例如:匹配规则为”[^abc]”,那么需要匹配的内容就是不是字符a,或者不是字符b,或不是字符c的任意一个字符。 



字符类:[a-zA-Z] 

 含义:代表的是a 到 z 或 A 到 Z,两头的字母包括在内。 

 例如:匹配规则为”[a-zA-Z]”,那么需要匹配的是一个大写或者小写字母。

 

字符类:[0-9] 

 含义:代表的是 0到9数字,两头的数字包括在内。 

 例如:匹配规则为”[0-9]”,那么需要匹配的是一个数字。 



字符类:[a-zA-Z_0-9] 

 含义:代表的字母或者数字或者下划线(即单词字符)。 

 例如:匹配规则为” [a-zA-Z_0-9] “,那么需要匹配的是一个字母或者是一个数字或一个下滑线。

 

预定义字符类:. 

 含义:代表的是任何字符。 

 例如:匹配规则为” . “,那么需要匹配的是一个任意字符。如果,就想使用 . 的话,使用匹配规则”.”来实现。

 

预定义字符类:d 

 含义:代表的是 0到9数字,两头的数字包括在内,相当于[0-9]。 

 例如:匹配规则为”d “,那么需要匹配的是一个数字。 



预定义字符类:w 

 含义:代表的字母或者数字或者下划线(即单词字符),相当于[a-zA-Z_0-9]。 

 例如:匹配规则为”w “,,那么需要匹配的是一个字母或者是一个数字或一个下滑线。 



数量词:X* 

 含义:代表的是X出现零次或多次。 

 例如:匹配规则为”a*” ,那么需要匹配的内容是多个字符a,或者一个a都没有。 



数量词:X+ 

 含义:代表的是X出现一次或多次。 

 例如:匹配规则为”a+”,那么需要匹配的内容是多个字符a,或者一个a。 



数量词:X{n} 

 含义:代表的是X出现恰好 n 次。 

 例如:匹配规则为”a{5}”,那么需要匹配的内容是5个字符a。

 

数量词:X{n,} 

 含义:代表的是X出现至少 n 次。 

 例如:匹配规则为”a{5, }”,那么需要匹配的内容是最少有5个字符a。 



数量词:X{n,m} 

 含义:代表的是X出现至少 n 次,但是不超过 m 次。 

 例如:匹配规则为”a{5,8}”,那么需要匹配的内容是有5个字符a 到 8个字符a之间。

  例:手机号码匹配 规则:"1[34578][0-9]{ 9}"

  该规则需要匹配的内容是:11位的手机号码,第1位为1,第2位为3、4、5、7、8中的一个,后面9位为0到9之间的任意数字。

  

  

转载于:https://www.cnblogs.com/Mhang/p/7434777.html

更多相关:

  • 现在,WEB系统的开发一般都采用前后端分离的架构,以及部分公司采用“前台-中台-后台“的组织架构,难免会出现开发进度不一致的情况,导致系统联调或测试需要等到所有依赖开发完成后才能够进行,为不影响软件开发、测试进度,消除等待浪费,因此引入了Mock服务。本文主要介绍的Mock工具是Wiremock(一种开源的测试工具,Mock工具有很多...

  • UE商城资源 Motion Symphony 运动匹配插件 Unreal Engine虚幻游戏引擎素材资源 Unreal Engine Marketplace –Motion Symphony 1.05 4.26运动交响曲插件 插件大小解压后:346M 资源大小共 2G 含官方文档 和官方使用视频教程(共100分钟 1920X...

  • 原文地址:http://www.cnblogs.com/chengmo/archive/2010/10/10/1847287.html 正则表达式:在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。许多程序设...

  • MQTT topic匹配规则 原文连接: https://blog.csdn.net/JiangCheng817/article/details/81333893 内容: 主题层级分隔符 “/”: 表示层级关系 单层通配符 “+”: 订阅消息时使用,匹配一层主题如 a/+ 匹配诸如 a/b a/c 但是不能匹配 a/b/c,特...

  •  1.特殊字符 ^匹配输入字符串的开始位置$匹配输入字符串的结尾位置( )标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 ( 和 )。* 匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 *。+匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 +。?匹配前面的子表达式零次或一次...

  • 1. 三字母词 在C语言中有一种三字母词的说法,trigraph sequences,目前为止有九种三字母词,如下 ??=               #                  ??)            ]                  ??!           |         ??(      ...

  • 题目:   请你来实现一个 atoi 函数,使其能将字符串转换成整数。   首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。   当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组...

  • 联考考试考到了这个题,随机化40分,现在来秒掉它吧。   题意: 给一个字符串,求其中的一段,使得出现次数最多的字符与出现次数最少的字符的出现次数之差最大。 输入输出样例 输入样例#1: 复制 10 aabbaaabab 输出样例#1: 复制 3   我们定义$cnt[i][j]$表示区间$[1,i]$中,j出现的次数, 定义...

  • 本推文主要识别的验证码是这种:第一步: 二值化所谓二值化就是把不需要的信息通通去除,比如背景,干扰线,干扰像素等等,只剩下需要识别的文字,让图片变成2进制点阵。第二步: 文字分割为了能识别出字符,需要对要识别的文字图图片进行分割,把每个字符作为单独的一个图片看待。第三步: 标准化对于部分特殊的验证码,需要对分割后的图片进行标准化处理,...

  •   源字符串: a a 1 ~`!@#$%^&()_+-={}[];',.- + 编码后: a%20a%201%20~%60%21@%23$%25%5E&%28%29_+-=%7B%7D%5B%5D;%27,.-%20+   源字符串: 变 ~!@#¥%…………&()——+=-·{}:“;‘、《》?,。、-+A a 1 编码后:...

  • 原文出处: 韩昊    1 2 3 4 5 6 7 8 9 10 作 者:韩 昊 知 乎:Heinrich 微 博:@花生油工人 知乎专栏:与时间无关的故事   谨以此文献给大连海事大学的吴楠老师,柳晓鸣老师,王新年老师以及张晶泊老师。   转载的同学请保留上面这句话,谢谢。如果还能保留文章来源就更感激不尽了。 我保证这篇文章...

  • 原文出处: 韩昊   我保证这篇文章和你以前看过的所有文章都不同,这是 2012 年还在果壳的时候写的,但是当时没有来得及写完就出国了……于是拖了两年,嗯,我是拖延症患者…… 这篇文章的核心思想就是: 要让读者在不看任何数学公式的情况下理解傅里叶分析。 傅里叶分析不仅仅是一个数学工具,更是一种可以彻底颠覆一个人以前世界观的思维...

  • 很多Linux高手都喜欢使用screen命令,screen命令可以使你轻松地使用一个终端控制其他终端。尽管screen本身是一个非常有用的工具,byobu作为screen的增强版本,比screen更加好用而且美观,并且提供有用的信息和快捷的热键。 想象一下这样一个场景:你通过Secure Shell(ssh)链接到一个服务器,并...

  • NarrowbandPrimary Synchronization Signal时域位置每1个SFN存在一个NPSSSFNSubframeSymbol长度每个SFN5最后11个symbol11个symbols频域位置NB-IOT下行带宽固定180kHz,一个PRB,12个子载波。...

  •  [h1]反斜杠只能够阻止一个字符  [h2]位于键盘的左上角,和~公用一个键。...