现在有100个正则放在数组里做文件内容的匹配,现在的写法是在 遍历文件时(很多,几千个文件),每次匹配之前 都编译了一遍,导致运行的时候 cpu 容易暴增到100。 挺费性能的 。现在想法是 能不能先把这些正则 都使用regexp.Compile 编译好,每次匹配文件内容的时候 就不需要再匹配了,直接reg.Find就好了。 求指导。
下图中 是现在的渣渣代码, rule是一个有100个正则的数组。
![111.jpg](https://static.studygolang.com/171115/3341eb6fc383488cd2835dad38597d3f.jpg)
<a href="/user/rock_zhang" title="@rock_zhang">@rock_zhang</a> 我的意思是 比方说我用100个正则,扫描1000个文件,那我就得编译1000*100次。 能不能就编译100次,然后多次匹配 这1000个文件
#4
更多评论