本文以匹配×××IP为例,介绍re模块的findall的用法: 返回值->列表

复杂匹配 = re.compile(正则表达式): 将正则表达式实例化

+

re.findall(要匹配的字符串): 从字符串开头 开始匹配,寻找完整个字符串后,将结果以 列表 返回

简单匹配 = re.findall(正则表达式,要匹配的字符串): 从字符串开头 开始匹配,寻找完整个字符串后,将结果以 列表 返回

懒癌,配上模块函数解释好消化re.findall(pattern, string, flags) 如果匹配成功,则返回一个列表,否则返回一个空列表;

第一个参数是正则表达式,

第二个参数表示要匹配的字符串;

第三个参数是标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。

需要特别注意的是,这个方法并不是完全匹配。它仅仅决定在字符串开始的位置是否匹配。所以当pattern结束时若还有剩余字符,仍然视为成功。想要完全匹配,可以在表达式末尾加上边界匹配符'$'

例如: re.findall(‘p’,’python’)返回值为['p'];

re.findall(‘p’,’p.python.p’)返回值为['p','p','p']

方法一:

对象名1 = re.compile(正则表达式)

对象名2 = re.findall(对象名1, 要比配的字符串)#!/usr/bin/python

#! -*- coding:utf-8 -*-

import re;

pattern = r"([0-9]{3}(\.[0-9]{1,3}){3})"

string = "192.168.1.1 192.100.0.0"

com_pat = re.compile(pattern)

result = re.findall(com_pat, string)

if result == None:

print("None")

else:

print("Match:",result)

pattern1 = r"a"

string1 = "abd cad"

com_pat1 = re.compile(pattern1)

result1 = re.findall(com_pat1, string1)

print("Match:",result1)

运行结果:Match: [('192.168.1.1', '.1'), ('192.100.0.0', '.0')]

Match: ['a', 'a']

求大佬告诉我:为什么匹配到的result列表会有'.1'和'.0'这个杂项????

re.search 与 re.match 与 re.findall 的区别:

相同点:

re.search 与 re.match 与 re.findall都是从字符串开头 开始匹配。

不同点:

re.search 按顺序从头到尾匹配,任意位置搜寻到合适的字符串则匹配成功。

re.match 按顺序从头到尾匹配,若开头第一个位置匹配失败,立即返回失败。

re.findall 按顺序从头到尾匹配,一直匹配到字符串末尾结束,用 列表 返回寻找到 所有 匹配到的结果。

python findall_Python 正则表达式:findall相关推荐

  1. Python中正则表达式findall用法

    一:前言 在写着自动化测试的脚本时,重新复习了一下正则表达式findall()方法.为了深化印象,输出点东西,就来写个通过正则表达式爬取菜鸟教程标题的小案例. 参考教程:菜鸟教程之Python正则表达 ...

  2. python正则表达式findall的使用

    python正则表达式findall的使用 文章来源与:https://www.cnblogs.com/gufengchen/p/10913186.html 正则表达式 正则表达式本身是一种小型的.高 ...

  3. Python中正则表达式用法 重点格式以这个为准_首看_各种问题

    20210811 https://www.jb51.net/article/101258.htm 一.惰性模式的概念: 此模式和贪婪模式恰好相反,它尽可能少的匹配字符以满足正则表达式即可,例如: va ...

  4. python使用正则表达式统计字符串中出现次数最多的数字

    python使用正则表达式统计字符串中出现次数最多的数字 #python使用正则表达式统计字符串中出现次数最多的数字 # find the most occurring element import ...

  5. python使用正则表达式识别大写字母并在大写字母前插入空格

    python使用正则表达式识别大写字母并在大写字母前插入空格 #python使用正则表达式识别大写字母并在大写字母前插入空格 import redef putSpace(input):# regex ...

  6. python使用正则表达式抽取字符串中最大数值数字

    python使用正则表达式抽取字符串中最大数值数字 #python使用正则表达式抽取字符串中最大数值数字 # Function to extract maximum numeric value fro ...

  7. Python的正则表达式

    Python Regular Expressions (Python 正则表达式) 本文来自于Google Developers中对于Python的介绍.https://developers.goog ...

  8. python爬虫正则表达式实例-python爬虫 正则表达式解析

    这篇文章主要介绍了python爬虫 正则表达式解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 - re.I # 忽略大小写 - re.M # 多 ...

  9. python中正则表达式的默认匹配方式为_Python模式匹配与正则表达式

    1.1 不用正则表达式来匹配文本 假设我希望在一个字符串中找到电话号码,电话号码的格式为三个数字,一个短横线,四个数字,一个短横线,四个数字 比如:131-3310-5293和132-2670-986 ...

  10. Python使用正则表达式处理字符串

    关于正则表达式基本语法请参考之前发过的文章常用正则表达式锦集与Python中正则表达式的用法,正则表达式扩展语法的高级用法后面会专门整理后再发. Python标准库re提供了正则表达式操作所需要的功能 ...

最新文章

  1. Spring MVC入门
  2. 深入理解 Java 虚拟机(第一弹) - Java 内存区域透彻分析
  3. Windows下简单好用的php平台:XAMPP Wamp5和AppServ
  4. js php 时间格式化字符串,JS怎么实现字符串与日期的互相转换及日期的格式化
  5. c++分治法求最大最小值实现_程序员:算法导论,分治法、归并排序,伪代码和Java实现...
  6. Linux命令使用练习一
  7. 进价移动加权核算体系
  8. matlab u怎么求均方差,Matlab求方差,均值,均方差,協方差的函數
  9. 波士顿房价预测(深度学习)与找到影响房价的决定性因素(最速下降法)
  10. 操作系统经典问题之哲学家就餐算法
  11. freeswitch命令一览表
  12. 但愿能带给你们一丝丝的温暖
  13. Docker nginx部署多个web静态资源,且隐藏端口
  14. mysql序列号生成_忘掉 Snowflake,感受一下性能高出587倍的全局唯一ID生成算法
  15. python群发手机短信_Python实现向手机号发送短信
  16. (28) 基于手机信令数据的动态出行OD以及出行需求估计
  17. Microsoft SQL Server 2012版下载与安装步骤
  18. Sambamba: process your BAM data faster!
  19. 联想计算机型号吧,联想电脑型号有几种
  20. 如何把中文数字字符串转成十六进制byte[]

热门文章

  1. 设计模式(行为型模式)——模板方法模式(Template Method)
  2. C/C++中的static和extern关键字
  3. 前期拍摄注意的简要几点,总结了一哈,与大家分享!
  4. 创建,删除和移动文件夹以及文件夹列表
  5. taglib 标签文件
  6. 3.SRE:Google运维解密 --- 拥抱风险
  7. 4. PHP之活动记录
  8. 在QTP中巧用WebTable对象的ChildItem方法进行测试
  9. Project Aposs
  10. 2017百越杯反序列化writeup