我正在使用正则表达式查找匹配项。在长字符串或分解成列表的相同字符串上使用它更有效吗?
例如
mystring = "asdfl;jkasdfj;ldj;lj;dlskjfasdfjkl; ;lj ;lf ak;lkjf al;kjdlkjsdl;fkja;dlkjf a;lsdf"
或
mylist = ["asdfl;jkasdfj;ldj;lj;dlskjfasdfjkl;",";lj", ";lf ak;lkjf","al;kjdlkjsdl;fkja;dlkjf a;lsdf"]
最佳答案
根据 re
模块的编写方式,更简单、更有效的方法是在字符串上使用正则表达式。这并不是绝对更快,但效率更高,因为它更容易编码、更容易维护,并且可以更好地利用 Python 的内置电池。
re
针对长字符串而非列表进行了优化。如果您要对该字符串列表使用正则表达式,您最终会调用 re
中的函数。
基本规则,除非必要,否则不要进行优化,因为现有的优化方式太慢了。
关于python - 哪个更高效?长字符串或列表上的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4292694/