打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Python 正则表达式 字符串的匹配、替换、分割、查找

1、search(pattern, string, flags=0)      在一个字符串中查找匹配

2、findall(pattern, string ,flags=0)     找到匹配,返回所有匹配部分的列表

3、sub(pattern, repl, string , count=0, flags=0)    将字符串中匹配正则表达式的部分替换为其他值

4、split(pattern, string ,maxsplit=0, flags=0)  根据匹配分割字符串,返回分隔符串组成的列表

用法:

  1. In [1]: import re

  2. In [2]: str1='imooc video=1000'

  3. In [3]: str1.find('1000')#可以查找出索引值
  4. Out[3]: 12

  5. In [4]: str1='imoocvideo=1000'

  6. In [5]: str1.find('1000')
  7. Out[5]: 11

  8. In [6]: info=re.search(r'\d+',str1)#'\d'代表任意一个数字,'+'可以匹配数字一次或者无限次,只能匹配最前面的

  9. In [7]: info
  10. Out[7]: <_sre.SRE_Match at 0xb6bf9b48>

  11. In [8]: info.group()
  12. Out[8]: '1000'



  13. In [1]: import re

  14. In [2]: str1='java=1000,python=9090'

  15. In [3]: info=re.findall(r'\d+',str1)#找到所有匹配的字符串,并把它们放到一个列表中

  16. In [4]: info
  17. Out[4]: ['1000', '9090']

  18. In [5]: sum([int(x) for x in info])
  19. Out[5]: 10090





  20. In [25]: def add1(match):#传入的match是一个字符串对象,
  21. ....: val=match.group()#匹配的字符串
  22. ....: num=int(val)+1 #强制转换
  23. ....: return str(num)#强制转化
  24. ....:
  25. In [28]: info=re.sub(r'\d+',add1,str4)#sub就是替换字符串和函数

  26. In [29]: info
  27. Out[29]: 'python video =10001'


  28. In [35]: str6='imooc:java c++ python c#'
  29. In [36]: re.split(r':| ',str6)#split用来分割字符串,':|'的意思是只要看见冒号和空格就会分割成一部分
  30. Out[36]: ['imooc', 'java c++ python c#']
  31. In [37]: re.split(r':| ',str6)
  32. Out[37]: ['imooc', 'java', 'c++', 'python', 'c#']


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
python-文本处理和正则表达式
Python 正则表达式——re模块介绍
Python快速入门正则表达式!半个小时就够了,最详细的教程系列!
大话 Python:python 基础巩固 -- 灵活运用正则表达式完成数据提取与筛选
Python正则表达式(一看就懂)
Py之re:re正则表达式库的简介、入门、使用方法之详细攻略
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服