当前位置: 首页 > Web前端 > HTML

百度工程师带你玩转正则

时间:2023-03-29 12:04:19 HTML

百度工程师带你玩玩正则表达式但是很多人跟我一样,只知道名字。因此,将经常性的常识总结出来,方便查阅。正则表达式(RegularExpression)是用来描述一组字符串特征的模式,用于匹配特定的字符串。使用特殊字符+普通字符来描述模式,从而达到文本匹配的目的。因此,正则表达式是一种用于匹配字符串中字符组合的模式。正则表达式可以很方便的提取出我们想要的信息,所以正则表达式是一个非常重要的知识点!欢迎大家一起学习~全文4082字,预计阅读时间11分钟。01正则概述正则表达式是用于匹配字符串中的字符组合的模式。在JavaScript中,正则表达式也是对象。02基本语法2.1定义方式字面量方式:/^\d+$/g,newRegExp("^\\d+$","g")2.2修饰符2.3元字符一个正则表达式模式是由简单的字符组成的,比如/美国广播公司/;或简单字符和特殊字符的组合,例如/ab*c/2.4其他断言断言的组成部分之一是边界。对于文本、单词或模式,可以使用边界来表示它们的开始或结束部分,分为边界型断言和其他断言。边界类断言有^、$、\b、\B,其他断言有x(?=y)、x(?!y)、(?<=y)x、(?group)or(?'name'group),其中name表示捕获组的名称,group表示捕获组中的正则模式。conststr='2022-12-15';constreg=/(\d{4})-(\d{2})-(\d{2})/;str.match(reg)//['2022-12-15'、'2022'、'12'、'15'、索引:0、输入:'2022-12-15'、组:undefined]constisNotCaputuringReg=/(?:\d{4})-(?:\d{2})-(?:\d{2})/;str.match(isNotCaputuringReg)//['2022-12-15',index:0,input:'2022-12-15',组:undefined]constnamedCaputuringReg=/(?\d{4})-(?\d{2})-(?\d{2})/;str。match(namedCaputuringReg)//匹配结果如图05正则化中有趣的用法5.1贪心匹配和非贪心匹配贪心匹配是匹配“量词”规则中要求的更多情况。对于非贪心匹配,加问号“?”在“量词”规则之后。“量词”包括?、*、+、{}、{n,}、{n,m}varstr="aaaaa";变量reg=/a+/g;str.match(reg);//["aaaaa"]varreg=/a??/g;//第一个问号代表0~1,第二个问号代表0或1匹配str.match(reg);//["","","","","",""]5.2反向引用反向引用是正则表达式中'\1'的用法,在下面的代码中(\w)先匹配a,'\1'指a,后面的量词'+'表示出现一次或多次。varstr='aaaaabbbbbbbcccccccd'varreg=/(\w)\1+/gstr.replace(reg,'$1')//$1是第一个括号里面的内容//abc06容易出错的用法/[1-51]/.test('6')'aaa'.match(/a*?/g)false//可以匹配1,2,3,4,5,同(1-5||1)['','','','']//注意:字符串中有3个a,数组中有4个空字符串——END——参考文献:[1]菜鸟教程:https://www.runoob.com/regexp...[2]MDN:https://developer.mozilla.org...\_Objects/RegExp/test推荐阅读:Diffie-HellmanKeyAgreementAlgorithmAlgorithmExplorationSysteminDollyBearbusinessapplicationDistributedsystemcriticalpathdelay分析练习

最新推荐
猜你喜欢