Python中简单的正则表达式

   我个人认为Python中的re部分比较难,我也找了一些书籍来看,主要是Python基础教程,来分享一下今天下午的学习成果。
  1. 什么是正则表达式
    正则表达式是可以匹配文本片段的模式。最简单的正则表达式就是单个字符,可以匹配其自身的。简单的说就是在文本寻找你要的东西。
  2. 简单的使用方法

    通配符:点号(.)一个点号可以匹配任何一个字符(空格,+-*%)
    转义符:\, 在re模式下一个就可以,不然的话要用两个
    选择符:|,可以在匹配的时候进行选择例如‘Python|perl’就可匹配字符‘python‘和’perl‘
    子模式:(),可以使字符的一部分,’p(ython|erl)’
    重复子模式:()?,问号前面的括号,匹配时是可以里面的内容可以没有的,

3.具体例子
line中的是主要的文本内容,
re1,re2,re3是匹配的不同的内容,分别实现的功能是查找中文,查找链接,查找标题

# coding:gb2312
import re 
line='''
ActionScript
发行时间 1998年
实现者 Adobe Systems
启发语言 JavaScriptJava
'''
re1=r'(.*?)' re2=r'(?<=href=\").+?(?=\")' re3=r'(?<=title=\").+?(?=\")' for z in re1,re2,re3: rec_th=re.findall(z,line ,re.M|re.I) if rec_th!='': for x in rec_th: print x

运行的结果就是
Python中简单的正则表达式_第1张图片

4.还有一些很好的例子
可以稍微借鉴一下,

import re 
href = '

CSDN

'
link = re.findall(r"(?<=href=\").+?(?=\")", href) print link
# coding:gb2312
lines = '''
序列号DEIN3-39CD3-2093J3 日期2013年1月22日 售价392.70 元 说明仅限5用户使用
'''
import re m = re.findall(r'(.*?)', lines, re.I|re.M) if m: for x in m: print x

你可能感兴趣的:(python)