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

正则表达式中(?s)与(?m)的区别

理论:

(?m) 和 (?s) 是正则表达式中的两个模式标志,它们具有不同的作用:

  1. (?m) 多行模式标志(也称为 “multiline” 模式):
  • 默认情况下,正则表达式将整个输入字符串视为单行
  • 多行文本中使用该标志时,正则表达式会匹配每一行
  1. (?s) 单行模式标志(也称为 “dotall” 模式):
  • 默认情况下,. 元字符匹配除了换行符之外的任意字符。
  • 当使用 单行模式标志时,. 元字符将匹配包括换行符在内的任意字符。

实践:

import repattern1 = r'^.*'  
pattern2 = r'(?m)^.*'  
pattern3 = r'(?s)^.*'matches1 = re.findall(pattern1, "Hello\nWorld")
matches2 = re.findall(pattern2, "Hello\nWorld")
matches3 = re.findall(pattern3, "Hello\nWorld")print(matches1)  # 输出:['Hello']
print(matches2)  # 输出:['Hello', 'World']
print(matches3)  # 输出:['Hello\nWorld']
http://www.lryc.cn/news/227013.html

相关文章:

  • Clickhouse学习笔记(11)—— 数据一致性
  • 【uniapp】六格验证码输入框实现
  • 【react hook】在react hook组件中,使用Antd Table组件,columns数据异步获取,list数据更新但没有rerender解决办法
  • ChatGPT的图识别来了
  • java Stream编程笔记
  • 顶顶通语音识别使用说明
  • 重磅发布 OpenAI 推出用户自定义版 ChatGPT
  • Java 幼儿园(20231111)读取 json 文件
  • 云计算、大数据技术的智慧工地,实现对建筑工地实时监测、管理和控制的一种新型建筑管理方式
  • 功能案例 -- 通过开关,改变白天和黑夜
  • Linux编写一个极简版本的Shell
  • 亚马逊云AI应用科技创新下的Amazon SageMaker使用教程
  • Eigen:旋转向量(Angle-Axis)转换为四元素和旋转矩阵
  • C#8.0本质论第十二章--泛型
  • Python与ArcGIS系列(七)自动化打印地图
  • 基于STM32单片机抢答器设计
  • 冯·诺伊曼体系结构--操作系统
  • IDEA插件开发--持久化配置信息方案
  • Vscode禁止插件自动更新
  • Zookeeper篇---第六篇
  • mysql数据库存储过程之游标(光标cursor)
  • 「帝国风暴兵」加入 The Sandbox,推出真实的全新人物化身系列和体验!
  • asp.net员工管理系统VS开发sqlserver数据库web结构c#编程包括出差、请假、考勤
  • C++套接字库sockpp介绍
  • Mac M2开发环境安装
  • Linux各种版本安装详细步骤和root密码破解
  • Netty - 回顾Netty高性能原理和框架架构解析
  • uni-app——項目day01
  • 【Java、MongoDB】程序控制非关系数据库
  • MySQL查询时间处理相关函数与方法实践笔记