1.
import re
a='abdcdddasdsad'
m=re.match(r"s",a)
print m #None
m=re.search(r"s",a)
print m #<_sre.SRE_Match object at 0x2b9f0eea9cc8>
只要看代码就明白了
search是去字符串中查找,match是匹配整个字符串
2.
def get_data( url, page_index ):
content = urllib2.urlopen( url % page_index ).read()
for m in re.finditer( r"·<a href=\"(.+?)\">.+?</a>", content ):
try:
loc = m.group( 1 ).strip().split( "?" )[0]
loc = re.sub( r"d-(\d+?)-1-(\d+?)-(\d+?)\.htm", "s-\g<1>-0-\g<2>-\g<3>.htm", loc, flags = re.IGNORECASE )
xml_content.append( template % {"loc":loc, "date":d.isoformat()} )
except:
pass
re.finditer遍历整个字符串中所有匹配,返回MatchObject的迭代器
re.sub用于字符串替换,\g<数字>表示第几个参数