Gat*_*ath 0 python regex string
我如何在python中使用正则表达式查找以下模式?对于这两个案件
我在"="符号后面寻找str2
str1=str2str1 = str2请注意,在"="符号的两边之间可以有空格或没有空格
我的是这样的,但只适用于其中一个案例!
m=re.search('(?<=str\s\=\s)\w+','str = str2')
Run Code Online (Sandbox Code Playgroud)
返回str2
救命!
迦特
如果你确实只有这么简单的字符串来解析你就不需要正则表达式了.你可以分割=和剥离(或甚至lstrip)结果元组的最后一个元素:
>>> case = 'str = str2'
>>> case.partition('=')[2].lstrip()
'str2'
Run Code Online (Sandbox Code Playgroud)
它会比正则表达式快得多.只是为了表明我做了一个简单的测试有多快:
>>> timeit.timeit("'str1 = str2 '.partition('=')[2].strip()")
0.49051564213846177
>>> timeit.timeit("'str1 = str2 '.split('=')[1].strip()")
0.97673281637025866
>>> timeit.timeit('import re')
0.65663786250422618
Run Code Online (Sandbox Code Playgroud)