欢迎使用CSDN-markdown编辑器

来源:互联网 发布:恐怖主义刑法立法知乎 编辑:程序博客网 时间:2024/06/05 08:14

Python 正则表达式 论文

昨晚同学问了我一个问题,关于python正则表达式的,有一段字符串,类如#*Usability Issues of Grid System Software.#@Zhi-Wei Xu, Hao-Jie Zhou, Guo-Jie Li#t2006#cJ. Comput. Sci. Technol.#index53e9a21cb7602d9702b20544,这里面有论文的题目,作者,时间,发表的杂志,标号,用正则如何弄出来,废话少说,看代码

import ref='#*Usability Issues of Grid System Software.#@Zhi-Wei Xu, Hao-Jie Zhou, Guo-Jie Li#t2006#cJ. Comput. Sci. Technol.#index53e9a21cb7602d9702b20544'paperRegex=re.compile(r'''([a-zA-Z\s]+)             #title题目\.\#@([a-zA-Z,\s\-]+)     #author作者\#t(\d{4})                #year时间\#([a-zA-Z\.\s]+)         #publication\#([a-zA-Z0-9]+)          #index''',re.VERBOSE)mo=paperRegex.findall(f)print(mo)

这里说一下,先分析字符串,她给应该是一篇的数据,分5段,题目、作者、时间、发表杂志、序列号,每段用分隔的都有#,要分为多段,那每段就得用圆括号了,每段之间连接的那部分很好写,就是那些#@之类的(记得加转义符,python里#是注释),每一段匹配的范围,就是中括号[]里的字母,横线(顺便提一下,横线可以加转义符,也可以不加,看具体位置,字母后或者紧挨中括号的位置,可以不加),从效果看,还不错

#执行情况[('Usability Issues of Grid System Software', 'Zhi-Wei Xu, Hao-Jie Zhou, Guo-Jie Li', '2006', 'cJ. Comput. Sci. Technol.', 'index53e9a21cb7602d9702b20544')]
0 0
原创粉丝点击