Comparison of string search efficiency in Python
There are multiple string search methods in Python, including re. match/search or str. find.
An example is provided to illustrate the efficiency of various methods:
From timeit import timeitimport redef find (string, text): if string. find (text)>-1: passdef re_find (string, text): if re. match (text, string): passdef best_find (string, text): if text in string: passprint timeit ("find (string, text )", "from _ main _ import find; string = 'lookforme '; text = 'look'") print timeit ("re_find (string, text )", "from _ main _ import re_find; string = 'lookforme '; text = 'look'") print timeit ("best_find (string, text )", "from _ main _ import best_find; string = 'lookforme '; text = 'look '")
The execution result is:
0.4413942522342.123024940490.251421928406
The most efficient method is: if text in string: