import re
line = "Catsaresmarterthandogs"
matchObj = re.match( r'(.*)are(\w{2})(.*)', line, re.M|re.I)
if matchObj:
print ("matchObj.group() : ", matchObj.group())#group返回匹配的整个字符串,groups返回匹配各分组的元祖
print ("matchObj.group(1) : ", matchObj.group(1))#span(1)返回匹配第一个分组的起始索引
print ("matchObj.group(2) : ", matchObj.group(2))
print ("matchObj.group(2) : ", matchObj.group(3))
else:
print ("No match!!")

matchObj.group() : Catsaresmarterthandogs
matchObj.group(1) : Cats
matchObj.group(2) : sm
matchObj.group(2) : arterthandogs

search用法一样
————————————————————————————————————————————————————————————————————————————
re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;
而re.search匹配整个字符串,直到找到一个匹配。match 和 search 是匹配一次 findall 匹配所有
num = re.sub(r'#.*$', "", str) re.sub(替换规则,替换成xx,操作的字符串);用于替换字符串中的匹配项 ——————————————————————————————————————————————————————————————
# 将匹配的数字乘以 2
import re
# 将匹配的数字乘以 2
def double(matched):
value = int(matched.group('value'))
return str(value * 2)
s = 'A23G4HFD567'
print(re.sub('(?P<value>\d+)', double, s))#A46G8HFD1134
——————————————————————————————————————————————————————————————————
re.finditer(r"\d+","12a32bc43jf3") 返回匹配结果为一个迭代器
re.split('\W+', 'w3cschool, w3cschool, w3cschool.')分割匹配结果为一个列表
————————————————————————————————————
[^...] [^abc] 匹配除了a,b,c之外的字符[^0-9] 匹配除了数字外的字符
												

最新文章

  1. HTML 网页特效CSS大全
  2. Github上传自己的工程
  3. Memcache安全配置
  4. Codeforces Round #278 (Div. 1) B. Strip multiset维护DP
  5. LogBack入数据库重写
  6. Memcached Java Client with sample program--reference
  7. shell提示符显示git当前分支
  8. Android开发之自定义Spinner样式的效果实现(源代码实现)
  9. Mysql insert声明优化
  10. c# winfrom DataGridView使行高不可改变,使列头高度不可改变,
  11. Linux 字符驱动程序(一)
  12. 北京南天软件java工程师面试题
  13. 团队作业4----第一次项目冲刺(Alpha版本)4.24
  14. [国嵌攻略][159][SPI子系统]
  15. epoll函数
  16. 上传前端webuploader
  17. Java基础——Oracle(六)
  18. c++拷贝构造函数(深拷贝、浅拷贝)——转
  19. TF400511: Your team has not defined any iterations to use as sprints
  20. docker探索-swarm搭建docker集群(七)

热门文章

  1. (转)使用OpenGL显示图像(七)Android OpenGLES2.0——纹理贴图之显示图片
  2. Linux下安装Tomcat服务器
  3. 分布式调度框架TBSchedule使用方法
  4. StaticInjectorError[Http]:
  5. 数据库全表扫描的SQL种类
  6. 使用org-mode写cnblogs博客
  7. mysql中BLACKHOOL的作用
  8. 36-python基础-python3-字典与列表的区别
  9. hive HQL笔记
  10. springboot整合jsp 遇到的问题