最近在学写爬虫,聚合程序员的招聘信息,已经聚合了几个网站数据: http://www.codejob.me
但在写智联招聘爬虫的时候,薪酬如'6001-8000'
我的python代码:
s = '6001-8000'
if '-' in s:
m = re.match(r'(.*?)-(.*?)', s)
print m.group(1)
print m.group(2)
为什么m.group(1)
成功得到6001,而m.group(2)
得到的是空? 想请教一下大家了。
1
mhycy 2015-01-08 15:01:56 +08:00 2
为何不用split?
第二个匹配没匹配到,因为写的是'.*?' *可以为空?最小匹配,所以啥都没匹配到 为何不写成:'([0-9]+)-([0-9]+)' |
2
cloudream 2015-01-08 15:03:19 +08:00 1
*? 懒惰量词能不匹配就不匹配,所以……
|
3
beverse OP |
5
chizhong 2015-01-08 16:39:24 +08:00 1
越做越好了
|