作者hohiyan (海洋)
看板RegExp
标题[问题] match 全部大写且含空白的字串
时间Tue Mar 31 05:09:07 2015
使用的是 Python 3.4
字串格式如:
Ahearne M, 1999, INT J RES MARK, V16, P269, DOI 10.1016/S0167-8116(99)00014-2
栏位是以逗号分隔,所以资料分别为 author, year, paper, volumn, page, doi
因为有些资料会缺栏位(例如没有year或volumn...)
所以用 str.split(',') 的话可能会有不同笔资料栏位不同的问题
paper 这个栏位一定是全部都大写
因此想用正规式来抓取,但目前功力有限,
试了很久一直写不出有效的规则
请各位高手指教
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 149.159.27.253
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/RegExp/M.1427749750.A.513.html
1F:推 LPH66: re.search(",([A-Z ]+),",string).group(1) 这样? 03/31 08:50
2F:→ hohiyan: 谢楼上。可行,之後要再加工把前後的 , 移除掉就可以 03/31 10:41
3F:推 LPH66: .group(1) 就是抓出第一组 () 了, 应该不需要移掉逗号 03/31 13:08
4F:推 mars90226: "(?<=,)[A-Z ]+(?=,)" 这样group(0)就直接是内容XD 04/09 01:15