Python——RegularExpressions正则表达式

以下是学习goole PYTHON教程过程中的一些笔记。
'# ' 后面的是输出,希望你能从中获取你想要的。

Regular Expressions
import re
match = re.search(pat, text)     #match object

match = re.search('iig', 'called piiig')
#<_sre,SRE_Match  object  at  0xf7f7c448>
match.group()     #'iig'

match = re.search('igs', 'called piig')     #
match.group()     #error

def Find(pat, text):
   match = re.search(pat,text)
    if match: print match.group()
    else: print 'not found'

Find('ig', 'called piiig')
#ig
Find('hello', 'called piiig')
#not found

Find('...g', 'called piiig')
#iiig
Find('x...g', 'called piiig')
#not found
Find('..gs', 'called piiig')
#not found
Find('..g', 'called piig much better: xyzg')
#iig
Find('x..g', 'called piiig much better: xyzg')
#zyzg
Find(r'c\.l', 'c.lled piiig much better:xyzgs')
#c.l
Find(r':\w\w\w', 'blah :cat blah blah')
#cat
Find(r'\d\d\d', 'blah :123xxx ')
#123
Find(r'\d\s\d\s\d', '1 2 3')
#1 2 3
Find(r'\d\s+\d\s+\d', '1       2        3')
#1       2        3
Find(r':\w+', 'blah blah :kitten blabh blah')
#:kitten
Find(r':\w+', 'blah blah :kitten123 blabh blah')
#:kitten123
Find(r':\w+', 'blah blah :kitten123& blabh blah')
#:kitten123
Find(r':.+', 'blah blah :kitten123& blabh blah')
#blah blah :kitten123& blabh blah
Find(r':\S+', 'blah blah :kitten123&a=123&yatta  blabh blah')
#kitten123&a=123&yatta
Find(r'\w+@\w+', 'blah nick.p@gmail.com yatta @ ')
#p@gmail
Find(r'[\w.]+@\w+', 'blah hi.nick.p@gmail.com yatta @ ')
Find(r'\w[\w.]+@\w+', 'blah  . nick.p@gmail.com yatta @ ')
#nick.p@gmail
Find(r'\w[\w.]+@[\w.]+', 'blah .nick.p@gmail.com yatta @ ')

m = re.search(r'([\w.]+)@([\w.]+)', 'blah   nick.p@gmail.com yatta @ ')
#<_sre.SRE_Match object at 0xF7F649F8>
m.group()
m.group(1)
#'nick.p'
m.group(2)
#'gmail.com'

re.findall(r'[\w.]+@[\w.]+', 'blah nick.p@gmail.com yatta foo@bar ')
#['nick.p@gmail.com', 'foo@bar']
re.findall(r'([\w.]+)@([\w.]+)', 'blah nick.p@gmail.com yatta foo@bar ')
#[('nick.p', 'gmail.com'), ('foo', 'bar')]

.     #(dot) any char
\w     #word char
\d     #digit
\s     #whitespace
\S     #non-whitespace
+     #1 or more
*     #0 or more
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值