当前位置: 首页 > news >正文

正则表达式 re.findall 用法

正则 re.findall  的简单用法(返回string中所有与pattern相匹配的全部字串,返回形式为数组)
语法:
findall(pattern, string, flags=0)

import re

Python 正则表达式 re findall 方法能够以列表的形式返回能匹配的子串

# print (help(re.findall))
# print (dir(re.findall))

findall查找全部r标识代表后面是正则的语句
regular_v1 = re.findall(r"docs","https://docs.python.org/3/whatsnew/3.6.html")
print (regular_v1)
# ['docs']


符号^表示匹配以https开头的的字符串返回,
regular_v2 = re.findall(r"^https","https://docs.python.org/3/whatsnew/3.6.html")
print (regular_v2)
# ['https']

  


用$符号表示以html结尾的字符串返回,判断是否字符串结束的字符串
regular_v3 = re.findall(r"html$","https://docs.python.org/3/whatsnew/3.6.html")
print (regular_v3)
# ['html']


# [...]匹配括号中的其中一个字符
regular_v4 = re.findall(r"[t,w]h","https://docs.python.org/3/whatsnew/3.6.html")
print (regular_v4)
# ['th', 'wh']


“d”是正则语法规则用来匹配0到9之间的数返回列表
regular_v5 = re.findall(r"\d","https://docs.python.org/3/whatsnew/3.6.html")
regular_v6 = re.findall(r"\d\d\d","https://docs.python.org/3/whatsnew/3.6.html/1234")
print (regular_v5)
# ['3', '3', '6']
print (regular_v6)
# ['123']


小d表示取数字0-9,大D表示不要数字,也就是出了数字以外的内容返回
regular_v7 = re.findall(r"\D","https://docs.python.org/3/whatsnew/3.6.html")
print (regular_v7)
# ['h', 't', 't', 'p', 's', ':', '/', '/', 'd', 'o', 'c', 's', '.', 'p', 'y', 't', 'h', 'o', 'n', '.', 'o', 'r', 'g', '/', '/', 'w', 'h', 'a', 't', 's', 'n', 'e', 'w', '/', '.', '.', 'h', 't', 'm', 'l']


“w”在正则里面代表匹配从小写a到z,大写A到Z,数字0到9
regular_v8 = re.findall(r"\w","https://docs.python.org/3/whatsnew/3.6.html")
print (regular_v8)
#['h', 't', 't', 'p', 's', 'd', 'o', 'c', 's', 'p', 'y', 't', 'h', 'o', 'n', 'o', 'r', 'g', '3', 'w', 'h', 'a', 't', 's', 'n', 'e', 'w', '3', '6', 'h', 't', 'm', 'l']



“W”在正则里面代表匹配除了字母与数字以外的特殊符号
regular_v9 = re.findall(r"\W","https://docs.python.org/3/whatsnew/3.6.html")
print (regular_v9)
# [':', '/', '/', '.', '.', '/', '/', '/', '.', '.']

 

 




转载于:https://www.cnblogs.com/xieshengsen/p/6727064.html

相关文章:

  • Python中文件操作
  • 云计算与虚拟化的区别
  • JMM-java内存模型
  • 代码托管
  • 银行卡二元实名认证
  • 1576 最长严格上升子序列
  • 算法---两个栈实现一个队列
  • 机场打车有感
  • redis学习笔记(三):列表、集合、有序集合
  • AI创投的冰与火之歌:泡沫、跟风、短板和有钱花不出去的沮丧【转】
  • iOS 开发之 -- UDID和UUID的详解
  • WDS 三种模式
  • C++11: atomic 头文件
  • 有特殊字符的JSON串
  • 微信错误提示code= -4/微信发送被拒绝
  • ----------
  • 【跃迁之路】【699天】程序员高效学习方法论探索系列(实验阶段456-2019.1.19)...
  • 08.Android之View事件问题
  • Android 架构优化~MVP 架构改造
  • canvas 绘制双线技巧
  • create-react-app做的留言板
  • Java,console输出实时的转向GUI textbox
  • Protobuf3语言指南
  • SQL 难点解决:记录的引用
  • TiDB 源码阅读系列文章(十)Chunk 和执行框架简介
  • 安卓应用性能调试和优化经验分享
  • 不上全站https的网站你们就等着被恶心死吧
  • 关于springcloud Gateway中的限流
  • 官方新出的 Kotlin 扩展库 KTX,到底帮你干了什么?
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 时间复杂度与空间复杂度分析
  • 实习面试笔记
  • 思维导图—你不知道的JavaScript中卷
  • 算法系列——算法入门之递归分而治之思想的实现
  • 听说你叫Java(二)–Servlet请求
  • Spring第一个helloWorld
  • ​如何在iOS手机上查看应用日志
  • #WEB前端(HTML属性)
  • $NOIp2018$劝退记
  • (3)选择元素——(17)练习(Exercises)
  • (C++20) consteval立即函数
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (十)【Jmeter】线程(Threads(Users))之jp@gc - Stepping Thread Group (deprecated)
  • (转)项目管理杂谈-我所期望的新人
  • .CSS-hover 的解释
  • .Net core 6.0 升8.0
  • .NET Remoting Basic(10)-创建不同宿主的客户端与服务器端
  • .NET 的静态构造函数是否线程安全?答案是肯定的!
  • .net 反编译_.net反编译的相关问题
  • .NET 回调、接口回调、 委托
  • .net 受管制代码
  • .NET/C# 判断某个类是否是泛型类型或泛型接口的子类型
  • @SentinelResource详解
  • [2016.7 day.5] T2
  • [2021 蓝帽杯] One Pointer PHP