首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

python的正则,该如何解决

2012-02-21 
python的正则http://www.xxxx.com/zh-cn/news/8331_for_zhuantibaodao_text.htm我想要一个正则,只取http:/

python的正则
http://www.xxxx.com/zh-cn/news/8331_for_zhuantibaodao_text.htm

我想要一个正则,只取
http://www.xxxx.com

找了半天资料
我用这个在其他正则环境匹配成功了,http://(.*).com
但是在Python的环境匹配不成功。
那位高手帮帮忙

[解决办法]

Python code
#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
[解决办法]
Python code
http://[^/]+
[解决办法]
import re
import urlparse

urlparse.urlparse(url).netloc

热点排行