Python - 带URL的正则表达式

时间:2015-10-01 15:19:28

标签: python regex

为什么正则表达式与URL不匹配?这个例子有什么问题?

import re

link = "http://example.com/~abc/cgi-bin/abc/"
regex = r'[c][g][i]'

matchOBJ = re.match(regex, link)

if (matchOBJ):
    print "GOT IT"

print "END"

1 个答案:

答案 0 :(得分:0)

[c] [g] [i] 作为正则表达式并不真正有意义。 你可能只想要" cgi"。

也许你的意思是" [cgi]"?但是,你可以匹配" c或g或i"。

例如,[cgi]。*

将匹配

  • c ats
  • g 燕麦
  • guanas

[cgi]将匹配" cgi"因为开始' c'。

你可能想要一些接近的东西:

import re

link = "http://example.com/~abc/cgi-bin/abc/"
regex = r'.*\/cgi-bin\/.*'

matchOBJ = re.match(regex, link)

if (matchOBJ):
    print "GOT IT"

print "END"

但请考虑

 if "cgi-bin" in link:
    print "GOT IT EASY"