在我们用正则去匹配前,需要先了解一下贪婪量词的问题,因为一开始我们会先选择这种匹配方式,只有贪婪量词不成功时,才会使用我们之前学习的回溯法继续匹配。今天我们需要学习的是正则匹配整数的方法,在简单了解贪婪量词后,会为大家展示出匹配整数的代码示例。
1.贪婪量词
贪婪量词在 NFA 正则引擎中,量词默认都是贪婪的。当正则表达式中使用了下表所示的量词,正则引擎一开始会尽可能贪婪的去匹配满足量词的文本。当遇到匹配不下去的情况,就会发生回溯,不断试错,直至失败或者成功。
ble data-draft-node="block" data-draft-type="table" data-size="normal" data-row-style="normal">
当多个贪婪量词挨着存在,并相互有冲突时,秉持的是"先到先得"的原则,如下所示:
letstring="12345"; letregex=/(\d{1,3})(\d{1,3})/; console.log(string.match(regex)); //=>["12345","123","45",index:0,input:"12345"]
2.整数正则
//正整数正则 varposPattern=/^\d+$/; //负整数正则 varnegPattern=/^-\d+$/; //整数正则 varintPattern=/^-?\d+$/; //输出true console.log(posPattern.test("42")); //输出true console.log(negPattern.test("-42")); //输出true console.log(intPattern.test("-42"));
原文来自:https://www.py.cn
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容