第11.6节 Python正则表达式的字符串开头匹配模式及元字符“^”(插入符、脱字符)功能介绍
符号“^”为插入符,也称为脱字符,在Python中脱字符表示匹配字符串的开头,即字符串的开头满足匹配模式的要求。这个功能有点类似搜索函数match,只是这是通过搜索模式来指定,而match是通过函数来指定。
在 MULTILINE 模式(搜索标记中包含re.MULTILINE,关于搜索标记的含义请见《第11.2节 Python re模块函数概览》)下,本匹配模式是按行來搜索的,即只要多行文本中存在有搜索模式指定的字符串开头的行,也被认为是搜索到了指定串。而match不具备此功能。
举例:
>>> print("发现匹配串")if re.search("^第[一-十][章回]",'西游记第一回 悟彻菩提真妙理 断魔归本合元神 \n第二回 悟彻菩提真妙理 断魔归本合元神') else print("未发现匹配串") #没有使用re.MULTILINE
未发现匹配串
>>> print("发现匹配串")if re.search("^第[一-十][章回]",'西游记第一回 悟彻菩提真妙理 断魔归本合元神 \n第二回 悟彻菩提真妙理 断魔归本合元神',re.MULTILINE) else print("未发现匹配串") #使用re.MULTILINE
发现了匹配串
>>> print("发现匹配串")if re.match("^第[一-十][章回]",'西游记第一回 悟彻菩提真妙理 断魔归本合元神 \n第二回 悟彻菩提真妙理 断魔归本合元神',re.MULTILINE) else print("未发现匹配串") #使用match,并带re.MULTILINE
未发现匹配串
>>> print("发现匹配串")if re.search("[^]第[一-十][章回]",'西游记第一回 悟彻菩提真妙理 断魔归本合元神 \n第二回 悟彻菩提真妙理 断魔归本合元神',re.MULTILINE) else print("未发现匹配串") #脱字符在字符集中只匹配自身
未发现匹配串
注意:
1、 ’^’在匹配模式中必须为第一个字符,不在第一个字符位置则无效;
2、 ’^’在字符集中仅匹配自身,但如果放在字符集的开始则表示匹配模式为排除字符集内字符的任意其他字符匹配。
老猿Python,跟老猿学Python!
博客地址:https://blog.csdn.net/LaoYuanPython
请大家多多支持,点赞、评论和加关注!谢谢!*
第11.6节 Python正则表达式的字符串开头匹配模式及元字符“^”(插入符、脱字符)功能介绍的更多相关文章
- 第11.7节 Python正则表达式的字符串结尾匹配模式及元字符“$”功能介绍
符号"$"表示匹配字符串的结尾,即字符串的结尾满足匹配模式的要求. 在 MULTILINE 模式(搜索标记中包含re.MULTILINE,关于搜索标记的含义请见<第11.2节 ...
- 第11.5节 Python正则表达式搜索任意字符匹配及元字符“.”(点)功能介绍
在re模块中,任意字符匹配使用"."(点)来表示, 在默认模式下,点匹配除了换行的任意字符.如果指定了搜索标记re.DOTALL ,它将匹配包括换行符的任意字符.关于搜索标记的含义 ...
- 第11.8节 Python正则表达式的重复匹配模式及元字符“?”、 “*”、 “+”功能介绍
符号"?".""."+"这三个元字符修饰符在Python中都表示重复匹配的模式,即要求匹配的字符串满足重复次数的要求,但具体重复次数要求不同 ...
- 第11.9节 Python正则表达式的贪婪模式和非贪婪模式
在使用正则表达式时,匹配算法存在贪婪模式和非贪婪模式两种模式,在<第11.8节 Pytho正则表达式的重复匹配模式及元字符"?". "*". " ...
- 第11.13节 Python正则表达式的转义符”\”功能介绍
为了支持特殊元字符在特定场景下能表示自身而不会被当成元字符进行匹配出来,可以通过字符集或转义符表示方法来表示,字符集表示方法前面在<第11.4节 Python正则表达式搜索字符集匹配功能及元字符 ...
- 第11.25节 Python正则表达式编译re.compile及正则对象使用
一. 引言 在<第11.2节 Python 正则表达式支持函数概览>介绍了re模块的主要函数,在<第11.3节 Python正则表达式搜索支持函数search.match.fullm ...
- 第11.15节 Python正则表达式转义符定义的特殊序列
一. 引言 在前面<第11.13节 Python正则表达式的转义符"\"功能介绍>介绍了正则表达式转义符'\',只不过当时作为转义符主要是用于在正则表达式中表示元字符自 ...
- 第11.10节 Python正则表达式的非贪婪模式的重复匹配:'*?', '+?',和 '??'
在<第11.9节 Pytho正则表达式的贪婪模式和非贪婪模式>老猿简单介绍了贪婪模式和非贪婪模式,并说明'', '+',和 '?' 修饰符都是 贪婪的:它们在字符串进行尽可能多的匹配.有时 ...
- 第11.17节 Python 正则表达式扩展功能:命名组功能及组的反向引用
一. 引言 在<第11.16节 Python正则元字符"()"(小括号)与组(group)匹配模式>介绍了组匹配模式,在一个正则表达式内可以定义多个组,每个组都有一个顺 ...
随机推荐
- Python调用Java(基于Ubuntu 18.04)
最近实习,需要使用Python编程,其中牵涉到一些算法的编写.由于不熟悉Python,又懒得从头学,而且要写的算法自己之前又用Java实现过,就想着能不能用Python调用Java.经过查找资料,方法 ...
- leetcode26:valid-palindrome
题目描述 判断题目给出的字符串是不是回文,仅考虑字符串中的字母字符和数字字符,并且忽略大小写 例如:"A man, a plan, a canal: Panama"是回文 &quo ...
- Docker系列01—Docker 基础入门
一.初识Docker和容器 1.1 什么是docker 容纳其他物品的工具,可以部分或完全封闭,被用于容纳.存储.运输物品.物体可以被放置在容器中,而容器则可以保护内容物. 容器? 容器就是在隔离的环 ...
- 家庭版window10找不到文件'gpedit.msc'。请确定文件名是否正确后 ,再试一次
今天遇到电脑找不到gpedit.msc文件,所以记录一下这个问题的解决方法 1. 首先建立一个空白文档 代码如下: @echo off pushd "%~dp0" dir /b ...
- Java的图形打印
1.菱形 复制代码 package Java_Learn.File; public class Main1 { public static void main(String[] args) { pri ...
- [MIT6.006] 12. Square Roots, Newton's Method 平方根,牛顿法
首先让我们回顾下上节课讲的,用牛顿法计算√2的内容: 简单来说,牛顿法从x0=1不断向后计算逼近√2的值,而刚开始计算的精度是1,随着牛顿法的逼近(共log2d个循环),就能使得√2逼近值的精度达到d ...
- fork 子进程,父进程对于变量的共享
经过代码的练习发现: fork创建的子进程会完全复制父进程的代码包括变量,既复制fork之前创建的变量. 但是在创建子进程后,子进程与父进程对同一个变量的改变将相互不受影响,即使获取同一变量的地址是一 ...
- NO.A.0001——FIO工具使用教程
一.FIO工具安装: 1.FIO地址: 官网地址:http://freecode.com/projects/fio/ 源码安装包:http://brick.kernel.dk/snaps/fio-2. ...
- python实战GUI界面+mysql
前言 前面用tkinter做了一个巨丑的GUI界面,今天想把它变漂亮起来,重新找回page做了一个界面,它也是基于tkinter开发的所见即所得的界面编辑器,前面因为代码搞不明白没用上,现在重新研究一 ...
- ceph在centos7下一个不容易发现的改变
在centos6以及以前的osd版本,在启动osd的时候,回去根据ceph.conf的配置文件进行挂载osd,然后进行进程的启动,这个格式是这样的 [osd.0] host = hostname de ...