正则表达式的匹配规则 正则匹配任意字符和空格


正则表达式的匹配规则 正则匹配任意字符和空格

文章插图
正则表达式的组成元素?我们在编码过程中无论前端或者后端或多或少会遇到正则表达式 , 她虽然不是必须的 , 但是锦上添花是一定的 , 所以我们有必要去掌握它的规则 , 读懂他 , 了解他的语义 , 直至自己按规则写出自己业务逻辑的正则表达式 , 比如我们在修改维护人家的代码或者赏析源代码看到类似的字符串
(<(w*)([^>]*)>)|((?<=>).*?(?=<))如果我们不了解语义规则 , 是不是心里慌得一P , 心里万马奔腾 , 啥玩意东西?我在哪里 , 我是谁 , 我不活了?
还是有必要花点时间来学习下 , 如果各位同学观赏了上面的表达式产生和作者当初一样的情绪 , 恭喜你 , 两种选择 , 
一:自己面壁去
【正则表达式的匹配规则 正则匹配任意字符和空格】二:点个关注 , 给码字的作者一点小小的鼓励再拿个小板凳 , 仔细听我详细分解
言归正传 , 我们首先理解正则表达式的第一个基本概念:
元字符(metacharacter)当一个字符在正则引擎中赋予特殊意义 , 而不再代表字符本身含义 , 比如.在ASCII码中为46 , 在正则表达式语义环境中代表除开换行结束符之外任意字符 , 这句话究竟什么含义也?换句话说就是比如孙大圣的七十二变 , 根据具体的场景 , 他可以变成一只小小鸟 , 也可以变成一个漂亮小姐姐 , 或者其他任何东西 , 从引擎解析的角度可以假装是我们要找的那个东西 , 到达我们想要搜索结果 , 和我们sql里面的%通配符一样的语义
拆分正则表达式最小元字符组文本字符:
代表字符的本身含义 , 比如字符a代表ASCII 码是97 , 他可以匹配你搜索字符串任何位置的a字符 , 相当于精确匹配 。
匹配单个字符元字符:
从表达式构建来说 , 一次匹配模式可以由一个元字符构成 , 也可以由多个元字符构造一组元字符完成一次匹配 , 那么读懂正则表达式就必须要求你有一双慧眼 , 可以把正则表达式拆分成一个(组)一个(组)的一次匹配模式 , 画重点:拆
[A-F0-9] 字符集合区间中任意一个字符都可以匹配 , 匹配一次消费一个搜索字符串字符d 0到9任意一个数字D 匹配非数字[A-Za-z0-9] 匹配任意大小写字母、数字w 和上面相同 , 匹配任意大小写字母、数字 , 因为正则语言规则最先是linux使用的 , 这种使用频率过高 , 语法太繁琐了 , 作者在引擎中又自定义了一个简单的元字符来表述该语义 , 如果我们自己实现的正则引擎 , 你可以随意发挥 , 用某个简单的符号(元字符)代表某一类语义.一样的道理 , 其他还有很多 , 看你用具体哪个语法那种正则引擎 , 大致差不多 , 剩下的就仅仅是使用熟悉的过程而且 So easy!转义序列元字符 :
当我们想用元字符本身的语义去匹配我们的搜索字符串的时候 , 用来让正则引擎定义的元字符回归本源 , 比如我们想匹配IP地址:(d{1,3}.){3}d{1,3} 其中当正则引擎解析到.仅仅能匹配字符. , 而不是匹配除开换行结束符之外任意字符 。
位置匹配:
(零宽断言)只匹配位置 , 不匹配字符 , 不consume字符 , 比如


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: