[向过客提问]正则原理问题--为什么分组比断言快呢?

regex_night_02 regex_night_02 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
刚看到一个帖子:http://topic.csdn.net/u/20100828/21/4a5f44fc-d976-48af-bd9a-33ed40478ecf.html
过客兄和jutuo2009cs的答案均可以匹配。出于好奇,做了一个性能测试。发现过客兄的那个正则效率很高。引发本帖问题。
为什么分组匹配效果比断言要块那么多呢?

对比结果如下:
测试文本:
[field:name len="10"] 或 [field: name len="10"]
结果:
一共用时:1763毫秒(1.763秒) [100000次]

★表达式1:field:\s*(\S+)
执行时间:681毫秒(0.681秒) 占总时间38.63%

★表达式2:(?<=:\s*)\w+
执行时间:1082毫秒(1.082秒) 占总时间61.37%
...全文

相关推荐

javascript 正则表达式分组、断言详解

主要介绍了 javascript 正则表达式分组、断言详解的相关资料,需要的朋友可以参考下

weixin_38734008

为什么正则化能够解决过拟合问题?

为什么正则化能够解决过拟合问题一. 正则化的解释二. 拉格朗日乘数法三. 正则化是怎么解决过拟合问题的1. 引出范数1.1 L_0范数1.2 L_1范数1.3 L_2范数2. L_2范式正则项如何解决过拟合问题2.1 公式推导2.2 图像推导[^2]2.2.1 L1正则化2.2.2 L2正则化四. 结论 如果觉得不想看前两大点,可以直接看第三点公式推导或图像观察,个人觉得特别好理解。 一. 正则化的解释 为防止模型过拟合,提高模型的泛化能力,通常会在损失函数的后面添加一个正则化项。 L1正则化和L2正则化可以看做是损失函数的惩罚项。所谓惩罚是指对损失函数中的某些参数做一些约束, 使得参数的

weixin_38604395

正则表达式。包括零宽断言,正则替换的150种表达方式

新版正则表达式。包括零宽断言,正则替换的150种表达方式

zxmliuwei

Python正则表达式分组概念与用法详解

主要介绍了Python正则表达式分组概念与用法,结合具体实例形式较为详细的分析了Python正则表达式中分组、引用、断言等概念与相关使用技巧,需要的朋友可以参考下

weixin_38714370

正则表达式零宽断言详解

在使用正则表达式时,有时我们需要捕获的内容前后必须是特定内容,但又不捕获这些特定内容的时候,零宽断言就起到作用了

weixin_38601390
评论 12
收藏 已收藏
分享
返回顶部
regex_night_02
C# 111,128 成员 642,537 内容