为什么我不能将简单域名与Python正则表达式匹配?

时间:2015-06-29 13:30:47

标签: python regex

我正在使用Python在域上执行一个非常简单的正则表达式。我无法弄清楚为什么下面第5行没有返回匹配 - 我做错了什么?

In [1]: import re

In [2]: a = re.compile("example\.com", re.IGNORECASE)

In [3]: a.match("example.com")
Out[3]: <_sre.SRE_Match at 0x10b3a3b90>

In [4]: a.match("example.com/dlkfdsf")
Out[4]: <_sre.SRE_Match at 0x10b3a36b0>

In [5]: a.match("http://www.example.com/sdklfjsdf")
# No match

2 个答案:

答案 0 :(得分:0)

正如Avinash Raj已经在评论中提出的那样,匹配符合全文。

试试这个:

import re

a = re.compile("(example\.com)", re.IGNORECASE)

a.search("http://www.example.com/sdklfjsdf").groups(1)
('example.com',)

答案 1 :(得分:-1)

我本应该使用re.search()