>>> import re
>>> text = 'hm...err --are you surehe said sounding insecure.'
>>> pat = '[a-zA-Z]'
>>> re.findall(pat,text)#以列表形式返回给定模式的匹配项
['h', 'm', 'e', 'r', 'r', 'a', 'r', 'e', 'y', 'o', 'u', 's', 'u', 'r', 'e', 'h', 'e', 's', 'a', 'i', 'd', 's', 'o', 'u', 'n', 'd', 'i', 'n', 'g', 'i', 'n', 's', 'e', 'c', 'u', 'r', 'e']
>>> pat = '[a-zA-Z]+'
>>> re.findall(pat,text)
['hm', 'err', 'are', 'you', 'surehe', 'said', 'sounding', 'insecure']
>>> pat = r'[.?-",]+'
>>> re.findall(pat,text)#为什么会报错?,那是因为 - 没有转义,而不存在?-“这样一个范围
error: bad character range
>>> pat = r'[.?\-",]+'
>>> re.findall(pat,text)
['...', '--', '.']
>>> pat = '{name}'
>>> text = 'dear {name}...'
>>> re.findall(pat,text)
['{name}']
>>> re.sub(pat,'gumby',text)#用gumble替换匹配模式的字符串
'dear gumby...'
>>> text = 'dear name ...'
>>> re.escape('')#这个最有用了,可以将所有可能解释为正则运算符的字符进行转义,看结果就知道了
'www\\.python\\.org'
>>>re.escape('i am a beautiful girl?')
'i\\ am\\ a\\ beautiful\\ girl\\?'
阅读(207) | 评论(0) | 转发(0) |