gpt4 book ai didi

regex - 崩溃了的Powershell,并用Regex固定了我的CPU-为何/为什么?

转载 作者:行者123 更新时间:2023-12-03 16:32:21 25 4
gpt4 key购买 nike

执行以下命令后,我的Powershell固定在97%的CPU上并完全冻结。 我能够始终如一地重现此行为。知道是错误还是我做过一些禁忌?

$anew -match '((.*)+([v]\d{1}\.\d{1}\..*)$)'

$ anew是一个大约35行长的数组,用于保存来自服务器的配置转储。它看起来类似于:

目录:\ aaa.net \ builds \ directedbuilds \ bbbb \ ccc \ dddd \ eee

模式LastWriteTime长度名称
---- ------------- ------ ----
d ---- 2012年10月15日下午6:12 v2.1.0.69
环境:AB-34
Servers_in_Environment:SERVER01; SERVER02
NgatRootFolder:E:\ DIRNAME
PFXfilename:star.dom.net.pfx
等等...

最佳答案

您的模式以(.*)+开头,由于回溯,可能会导致O(n3)性能。您可能应该使用(^(.*)([v]\d{1}\.\d{1}\..*)$)(没有多余的+,并且 anchor 定)来避免回溯评估速度很慢的问题。

关于regex - 崩溃了的Powershell,并用Regex固定了我的CPU-为何/为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12945088/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com