正则表达式的应用

#!/usr/bin/python
#-*- coding:utf8 -*-

import re

#现在讲讲正则表达式
#这是一种字符串的高级语法规则

string = "Hello, This is a test from jack"

#首先匹配头部 Hello
#使用^
print re.findall(r"^Hello",string)
print re.findall(r"^HeLLo", string, re.IGNORECASE)

#匹配尾部
#使用$
print re.findall("jack$", string)
print re.findall("jacK$", string, re.I)

#匹配字符
string1 = "你好, Hello"
print re.sub(r"\w","hi",string1)

#打印字符换的长度
print str(re.subn(r"\w", "hi",string1)[1])

#非数字字母的个数
print str(re.subn(r"\W", "hi", string1)[1])

#sring1会匹配到一个空白字符
print re.sub(r"\s", "*", string1)

print str(re.subn(r"\s", "*", string1)[1])


#匹配数字
string2 = "This is version 2.0"
print re.sub(r"\d","2.0", string2)
print string2
print str(re.subn(r"\d", "2.0", string2)[1])


#限定符的使用
tel1 = "1234-65478935"
tel2 = "1234-1230-1234567"
print re.findall(r"\d{4}-\d{8}|\d{4}-\d{7}", tel1)
print re.findall(r"\d{4}-\d{8}|\d{4}-\d{7}", tel2)

#正确匹配后会显示列表
#compile进行预编译
s = "hdsfiwji458sfw5e63ws"
p = re.compile(r"\d+")
print p.findall(s)
#打印出匹配的模式
print p.pattern

#进行分组
p = re.compile(r"(abc)\1")
m = p.match("abcabcabc")
print m.group(0)
print m.group(1)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值