代码
def search(self, arg1, arg2):
global ipv4_regex, type_regex
if isinstance(arg2, type_regex):
text = re.search(arg2, arg1)
if text:
p = text.group()
return len(p)
else:
return 0
else:
if arg2 in arg1:
return len(arg2)
else:
return 0
我有一个python脚本,为了提供一个请求,这个函数重新计算大约452900次(通过使用pprofile进行代码分析找到这个值),以给出输出。
关于功能的一些注意事项:
arg1 = string
arg2 = ith string/regex
基本上,arg2
是需要与ith
匹配的一长串正则表达式/字符串的arg1
实例(arg1对于一个请求保持不变),以便找到匹配的长度
我想出了这个功能,但时间& CPU消耗正成为我的瓶颈。由于许多搜索操作,CPU很快就会很高。
到目前为止我的想法是什么
if-else
这些想法到目前为止都是简单的想法,我无法将它们付诸行动。
我无法控制arg2中的正则表达式,所以正则表达式优化在这里没有帮助。
请建议,我正在寻找关于如何优化此功能的想法?
由于