欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > 正则表达式基础

正则表达式基础

2024/11/30 13:29:19 来源:https://blog.csdn.net/qq_65307874/article/details/140787106  浏览:    关键词:正则表达式基础

引言

        学习re模块之前 要先了解 正则表达式  更好的去使用和理解re模块

正则表达式 

        正则表达式是对字符串操作的一种逻辑公式,它会将事先定义好的一些特定字符,以及这些特定字符的组合,组成一个规则字符串,并且通过这个规则字符串表达对给定字符串的过滤逻辑。

        一条正则表达式也称为一个模式,使用每个模式可以匹配指定文本中与表达式模式相同的字符串。正则表达式由 普通字符元字符 或 预定义字符 集组成,其中普通字符包括大小写字母和数字。

        元字符

元字符说明
.匹配任何一个字符(换行符除外)
^匹配字符串的开头
$匹配字符串的末尾
|连接多个子表达式,匹配与任意子表达式模式相同的字符串
[]字符组,匹配其中出现的任意一个字符
-连字符,匹配指定范围内的任意一个字符
?匹配其 前导字符 0次 或 1次
*匹配其 前导字符 0次 或 多次
+匹配其 前导字符 1次 或 多次
{n}匹配其 前导字符  n 次
{m,n}匹配其 前导字符 m ~ n 次
()分组,匹配子组
.*贪婪匹配:表示任意匹配除换行符(\n、\r)之外的任何单个或多个字符, 当使用.*时,默认情况下,正则表达式引擎会尽可能多地匹配字符,这称为贪婪匹配  它会匹配从字符串开头到 正则表达式 之间的所有内容
.*?惰性匹配:懒惰量词告诉正则表达式引擎尽可能少地匹配字符。使用.*?时,引擎会尽可能少地匹配字符直到它找到匹配模式的剩余部分。

        预定义字符 

        

预定义字符说明
\w匹配下画线“_”或任何字母(a~z,A~Z)与数字(0~9)
\s匹配任意的空白字符,等价于[<空格>\t\r\n\f\v]
\d匹配任意数字,等价于[0-9]
\b匹配单词的边界
\W与\w相反,匹配非字母或数字或下画线的字符
\S与\s相反,匹配任意非空白字符的字符,等价于[^\s]
\D与\d相反,匹配任意非数字的字符,等价于[^\d]
\B与\b相反,匹配不出现在单词边界的元素
\A仅匹配字符串开头,等价于^
\Z仅匹配字符串结尾,等价于$

        捕获组 

        捕获组是正则表达式中的一个概念,它允许你从匹配的文本中提取子字符串。在正则表达式中,捕获组通过使用圆括号 () 来定义。

  • 圆括号 () 内的正则表达式定义了一个捕获组。
  • 每个捕获组匹配的文本可以被捕获并存储,通常用于后续的引用或操作。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com