1.3.5 使用 search()在一个字符串中查找模式(搜索与匹配的对比)
  其实,想要搜索的模式出现在一个字符串中间部分的概率,远大于出现在字符串起始部分的概率。这也就是 search()派上用场的时候了。 search()的工作方式与 match()完全一致,不同之处在于 search()会用它的字符串参数,在任意位置对给定正则表达式模式搜索第一次出现的匹配情况。如果搜索到成功的匹配,就会返回一个匹配对象; 否则, 返回 None。我们将再次举例说明 match()和 search()之间的差别。 以匹配一个更长的字符串为例,这次使用字符串“foo”去匹配“seafood”:

import re#导入模块名
# search()会用它的字符串参数,在任意位置对给定正则表达式模式搜索第一次出现的匹配情况
re.search('foo', 'seafood').group() # 使用 search() 代替
# 搜索成功,但是匹配失败
# m = re.search('foo', 'seafood')# 使用 search() 代替
# if m is not None:
#     m.group()

  可以看到,此处匹配失败。 match()试图从字符串的起始部分开始匹配模式;也就是说, 模式中的“f”将匹配到字符串的首字母“s”上,这样的匹配肯定是失败的。然而,字符串 “foo”确实出现在“seafood”之中(某个位置),所以,我们该如何让 Python 得出肯定的结果呢?答案是使用 search()函数,而不是尝试匹配。 search()函数不但会搜索模式在字符串中第一次出现的位置,而且严格地对字符串从左到右搜索。

转载于:https://www.cnblogs.com/PerfectWanan/p/9008200.html

1.3 正则表达式和Python语言-1.3.5使用 search()在一个字符串中查找模式(搜索与匹配 的对比)...相关推荐

  1. python中在一个字符串中查找另一个字符串。实现一个字符串的find函数。

    1.在一个字符串中查找另一个字符串 2.找到了返回第一次出现的位置 3.没找到返回-1 4.参数s1为源字符串,参数s2为要查找的字符串 def index_of_str(s1, s2):n1=len ...

  2. 《Python核心编程(第3版)》——1.3 正则表达式和Python语言

    本节书摘来自异步社区<Python核心编程(第3版)>一书中的第1章,第1.3节,作者[美] Wesley Chun(卫斯理 春),孙波翔 李斌 李晗 译,更多章节内容可以访问云栖社区&q ...

  3. python中字符串查找子串_Python字符串中查找子串的方法

    Python字符串中查找子串的方法 发布于 2015-04-12 08:58:32 | 230 次阅读 | 评论: 0 | 来源: 网友投递 Python编程语言Python 是一种面向对象.解释型计 ...

  4. 字符串中查找IP地址的正则表达式

    字符串中查找IP地址的正则表达式: IP地址:(2[0-4]\d|25[0-5]|[01]\d\d|\d\d|\d)\.(2[0-4]\d|25[0-5]|[01]\d\d|\d\d|\d)\.(2[ ...

  5. python语言变量命名规则有什-以下选项中,符合Python语言变量命名规则的是_学小易找答案...

    [填空题]与文件系统相比,数据库系统的数据冗余度___________,数据共享性___________. [填空题]在数据库体系结构中,两级数据映象分别是指___________之间的数据映象与__ ...

  6. 下列选项中不属于python语言基本控制结构的是_下列选项中,不属于Python语言特点的是...

    [简答题]这个三个按钮分别表示什么?分别用图1 是?,图2是?图3是? [判断题]金属从液态转变为固态晶体的过程称为结晶. [多选题]简化的 Fe - Fe 3 C状态图上的 S 点是共析点,该点的温 ...

  7. python 语言教程(3)变量之字符串

    1. 由数字.字母.下划线组成的一串字符 eg. s = "a1a2···an" # n>=0 1.1 取值顺序 字串列表有2种 从左到右索引默认0开始的,最大范围是字符串长 ...

  8. python 语言, 详解fromstring 函数 -------------从字符串到Ascii 码的转换

    先来个小例子: test = "abcdef" temp = numpy.fromstring(test,dtype=numpy.int8) print(temp) 结果为:[ 9 ...

  9. python模糊查找文件夹名字_python实现在目录中查找指定文件的方法

    本文实例讲述了python实现在目录中查找指定文件的方法.分享给大家供大家参考.具体实现方法如下: 1. 模糊查找 复制代码 代码如下: import os from glob import glob ...

  10. python upper()函数和lower()函数(返回字符串中字母的大[小]写)(大写、小写)

    upper()方法 Python upper() 方法将字符串中的小写字母转为大写字母. str.upper() #!/usr/bin/python3str = "this is strin ...

最新文章

  1. 802.11 MESH WLANs
  2. php保存成乱序,PHP实现断点续传乱序合并文件的方法
  3. matlab绘制csv图片,Matlab处理csv文件与图形绘制总结
  4. 如何在 C# 中使用隐式和显式操作符
  5. 查看linux IO地址范围
  6. 这样查看告警邮件要慢一点……
  7. 红橙Darren视频笔记 贝塞尔曲线实现消息拖拽粘性效果 画笔练习
  8. MongoDB安装问题
  9. 博客开园了~~~~~~
  10. python中质数的表达方式_python求质数的3种方法
  11. 【图像处理】基于matlab直方图医学图像处理【含Matlab源码 458期】
  12. Hibernate教程——史上最全面的项目和教程集合
  13. 商务办公软件应用与实践【4】
  14. python日常练习五,PPT批量转化pdf,批量把Word存入excel
  15. js 获取浏览器 滚动的高度
  16. python之微信自动恢复
  17. python3中使用pip3错误syn_python-pip3错误-'_NamespacePath'对象没有属性'sort'
  18. vr全景展示是什么?vr全景展示有哪些实际功能!
  19. 天空之城 10孔口琴
  20. 研究一下Chocolatey

热门文章

  1. 5个Linux 服务器发行版你值得拥有
  2. Linux网络编程基础
  3. 我的 WinClock 项目系列之一 (概述)
  4. Visual studio 2010 中文SP1 无法安装Silverlight5 Beta Tools的解决办法
  5. npm 安装 -D 和-S的区别
  6. 4 基于优化的攻击——CW
  7. MyBatis 别名标签 sql的复用
  8. C# 根据地址调用 Google Map 服务得到经纬度
  9. 【笔记】解析MP3文件信息
  10. poj 1251 Jungle Roads