hel*_*hod 0 python regex string
假设你有一些这个字符串(一行)
10.254.254.28 - - [06/Aug/2007:00:12:20 -0700]"GET/keyser/22300/HTTP/1.0"302 528" - ""Mozilla/5.0(X11; U; Linux i686(x86_64) ; en-US; rv:1.8.1.4)Gecko/20070515 Firefox/2.0.0.4"
并且你想要在GET和HTTP之间提取部分(即一些网址),但前提是它包含"拼图"这个词.你会如何在Python中使用正则表达式?
到目前为止,这是我的解决方案.
match = re.search(r'GET (.*puzzle.*) HTTP', my_string)
它的工作原理,但我想到的东西,我一定要第一/二/两改.*到.*?为了他们是不可贪婪.在这种情况下它真的重要吗?
不需要正则表达式
>>> s
'10.254.254.28 - - [06/Aug/2007:00:12:20 -0700] "GET /keyser/22300/ HTTP/1.0" 302 528 "-" "Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4"'
>>> s.split("HTTP")[0]
'10.254.254.28 - - [06/Aug/2007:00:12:20 -0700] "GET /keyser/22300/ '
>>> if "puzzle" in s.split("HTTP")[0].split("GET")[-1]:
... print "found puzzle"
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
353 次 |
| 最近记录: |