
正则表达式
文章平均质量分 68
wukurua
摸鱼使者
展开
-
正则表达式匹配空值
.{0}可匹配空值例如:port=(.{0})可匹配port=,匹配结果为:这个方法适用于这个字段不一定有值,例如有时port=80,有时port=,这时候就可以这样写:port=(.{0}|\d+)把空值放在前面,先判断是否为空完再判断是否满足值,避免出现因为优先匹配值而忽略了空置的版判断,例如:port=(.*|.{0})去匹配port= 824413,结果为:与本意相违背。...原创 2021-03-11 14:55:21 · 7006 阅读 · 0 评论 -
正则表达式学习——(3)正则性能优化
参考文章:https://www.zhihu.com/question/48219401/answer/1476436385mark一个好用的正则测试网站https://regex101.com/一、避免量词嵌套/a*b/和/(a*)*b/去匹配aaaaa,前者的匹配步数远远小于后者。可见,嵌套量词会大大增加正则的执行过程。因为这其中进行了两层回溯,这个执行步骤增加的过程就如同算法复杂度从 O(n)上升到 O(n^2)的过程一般。所以面对量词嵌套,我们需作出适当的转化消除这些嵌套:(a*..原创 2021-02-26 11:26:54 · 708 阅读 · 0 评论 -
正则表达式学习——(2)正则回溯
参考文章:https://www.zhihu.com/question/48219401https://www.jianshu.com/p/48dc319f68f3https://www.cnblogs.com/chanshuyi/p/9197164.htmlhttps://www.cnblogs.com/study-everyday/p/7426862.html一、正则回溯是什么首先,回溯是什么? 回溯法是一种通用的计算机算法,用于查找某些计算问题的所有(或某些)解决方案,特别是约..原创 2021-02-26 10:07:12 · 886 阅读 · 0 评论 -
正则表达式学习——(1)基础语法
参考文章:https://www.zhihu.com/question/48219401一、什么是正则表达式?正则表达式(Regular Expression)是一种文本模式,其使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。这里的文本模式我理解成一种文本的一种标准格式,就像年月日格式的日期是yyyy-mm-dd。二、为什么使用正则表达式?(1)验证:看看字符串是不是符合某个模式,比如用行用户名密码的验证。(2)查找:从大量信息中快速提取指定内容,比如在一些ip中,查找指定ip。.原创 2021-02-26 10:05:20 · 169 阅读 · 0 评论