python的正则
http://www.xxxx.com/zh-cn/news/8331_for_zhuantibaodao_text.htm
我想要一个正则,只取
http://www.xxxx.com
找了半天资料
我用这个在其他正则环境匹配成功了,http://(.*).com
但是在Python的环境匹配不成功。
那位高手帮帮忙
[解决办法]
#coding=utf-8import reimport urlparseif __name__=='__main__': url = 'http://www.xxxx.com/zh-cn/news/8331_for_zhuantibaodao_text.htm' # 按照你的思路 # url中的netloc,也就是www.xxxx.com,具体应该可以包括那些字符 # 你可以参考:http://www.w3.org/Addressing/rfc1808.txt netlocPattern = r"http[s]?://(?:[;?]|[:@&=]|[0-9]|[a-z]|[A-Z]|[$\-_.+]|[!*'(),]|(:?%[a-f][A-F][0-9]{2}))+" print re.search(netlocPattern, url).group() # 其实更简单的做法是使用urlparse print "http://" + urlparse.urlparse(url).netloc
[解决办法]
http://[^/]+
[解决办法]
import re
import urlparse
urlparse.urlparse(url).netloc