python常用正则表达式

 

匹配颜色对应表:
口诀: 123,123,123,1
123分别用颜色表示。

{"level":"info","message":"Sendno: 1974497337","timestamp":"2017-01-18 08:00:08:545"}
reg = re.compile('\{"level":(?P<remote_ip>[^.]*),"message":(?P<messagea>[^.]*),"timestamp":(?P<time>[^.]*)\}')

####################下面这条是匹配字符更为复杂的######################################
a='{"level":"info","message":"::ffff:10.42.99.232 - - [18/Jan/2017:00:00:05 +0000] \"POST /api/v1/push HTTP/1.1\" 200 84 \"-\" \"-\"\n","timestamp":"2017-01-18 08:00:05:998"}'
reg = re.compile('\{"level":"(?P<remote_ip>[^.]*)","message":"(?P<messagea>.*?)","timestamp":"(?P<time>[^.]*)"}', re.S)

reg = re.compile('\{(?P<remote_ip>[^,]*),(?P<messagea>[^,]*),(?P<time>[^,]*)')  #通用无脑匹配型


复制代码
import re
line ='192.168.0.1 25/Oct/2012:14:46:34 "GET /api HTTP/1.1" 200 44 "http://abc.com/search" 
"Mozilla/5.0"'
reg = re.compile('^(?P<remote_ip>[^ ]*) (?P<date>[^ ]*) "(?P<request>[^"]*)" 
(?P<status>[^ ]*) (?P<size>[^ ]*) "(?P<referrer>[^"]*)" "(?P<user_agent>[^"]*)"')
regMatch = reg.match(line)
linebits = regMatch.groupdict()
print linebits
for k, v in linebits.items() :
    print k+": "+v
复制代码

 

python 正则   re  模块常用方法

re.match      #从头匹配

re.search      #全局匹配第一个符合的字符串

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值