python 正则表达式 之re.findall
2016-07-22 17:08
731 查看
python 正则表达式 re findall 方法能够以列表的形式返回能匹配的子串。
re.findall(pattern, string[, flags]):
搜索string,以列表形式返回全部能匹配的子串。先看个简单的代码:
import re
p = re.compile(r'\d+')
print p.findall('one1two2three3four4')
### output ###
# ['1', '2', '3', '4']
稍微复杂点比如:
info = '<a href="http://www.baidu.com">baidu</a>' 我们的需求是通过正则表达式提取网址和锚文本,那可以用到
findall()
import re
relink = '<a href="(.*)">(.*)</a>'
info = '<a href="http://www.baidu.com">baidu</a>'
cinfo = re.findall(relink,info)
print cinfo
输出的结果:[('http://www.baidu.com', 'baidu')] 返回的是一个列表,列表里面是匹配的结果形成的元组形式
例子function:
re.findall(pattern, string[, flags]):
搜索string,以列表形式返回全部能匹配的子串。先看个简单的代码:
import re
p = re.compile(r'\d+')
print p.findall('one1two2three3four4')
### output ###
# ['1', '2', '3', '4']
稍微复杂点比如:
info = '<a href="http://www.baidu.com">baidu</a>' 我们的需求是通过正则表达式提取网址和锚文本,那可以用到
findall()
import re
relink = '<a href="(.*)">(.*)</a>'
info = '<a href="http://www.baidu.com">baidu</a>'
cinfo = re.findall(relink,info)
print cinfo
输出的结果:[('http://www.baidu.com', 'baidu')] 返回的是一个列表,列表里面是匹配的结果形成的元组形式
例子function:
def get_yizhe_info(url): # url weiyigecanshu #url='http://book.douban.com/subject/6082808/?from=tag_all' # For Test req = urllib2.Request(url, headers=hds2[np.random.randint(0,len(hds2))]) html = urllib2.urlopen(req).read() html = html.replace('\n', '') #print html try: reg_temp='<span class="pl"> 译者</span>: *?(.*?)<br/>' temp=re.findall(reg_temp,html) print temp if temp: reg_author = '<a class="" href=".*?">(.*?)</a>' name = re.findall(reg_author, temp[0]) print name str='' for na in name: str=na+'/'+str str = str.replace(str,str[:-1]) except: str = '暂无' return str
相关文章推荐
- Android之获取手机上的图片和视频缩略图thumbnails
- android string.xml文件中的整型和string型代替
- Android java 与 javascript互访(相互调用)的方法例子
- msql 正则表达式
- 正则表达式
- android上改变listView的选中颜色
- 搜狗百度360市值齐跌:搜索引擎们陷入集体焦虑?
- String.intern
- 本人即将筹备败家日志,敬请期待!
- IE:使用搜索助手
- Mootools 1.2教程 正则表达式
- Prototype源码浅析 String部分(二)
- Ruby中的String对象学习笔记
- Redis02 使用Redis数据库(String类型)全面解析
- 批处理FINDSTR正则表达式用法实例分析
- PostgreSQL ERROR: invalid escape string 解决办法
- vbs正则表达式代码
- C#正则表达式Regex类的常用匹配
- C#中利用正则表达式将人民币金额转换为大写汉字