Python初识模块之正则表达式

Python初识模块之正则表达式什么是正则表达式  正则表达式是字符串匹配的一种规则,在线测试工具http://tool.chinaz.com/regex/[字符组]在同一个位置可能出现的各种字符组成了一个字符组,在正则表达式中用[]表示字符分为很多类,比如数字、字母、标点等等。假如你现在要求一个位置”只能出现一个数字”,那么这个位置上的字符只能是0、1、2…9这10个数之一。[0-9]、[a-z]、[A…

大家好,又见面了,我是你们的朋友全栈君。

什么是正则表达式

  正则表达式是字符串匹配的一种规则,在线测试工具http://tool.chinaz.com/regex/

[字符组]在同一个位置可能出现的各种字符组成了一个字符组,在正则表达式中用[]表示
字符分为很多类,比如数字、字母、标点等等。
假如你现在要求一个位置"只能出现一个数字",那么这个位置上的字符只能是0、1、2...9这10个数之一。
[0-9]、[a-z]、[A-Z]、[0-9a-z]等等都是字符组的应用,注意一个字符组只匹配一个字符哦

    字符:

元字符  匹配内容

.     除换行符以外的任意字符

\w    匹配字母,数字,下划线 –word

\s     匹配所有空白符 –space

\d     匹配数字 –digit

\W      匹配非字母,数字,下滑线的字符

\S    匹配非空白符

\D    匹配非数字

\n    匹配一个换行符

\t     匹配制表符 –table

.\b      匹配一个单词的结尾(不好用)

^      匹配字符串的开头

$      匹配字符串的结束,与^连用可以严格约束字符串 eg: ^[a-z]$只能匹配一个字母

|     或,从左到右匹配,所以长的应该在前,短的在后

()      表示一个组

[^…]    除了…的所有字符 eg: [^a-z]

  量词:用来约束紧跟着的字符,贪婪匹配,尽可能匹配多次

*    表示重复0次或多次

+    表示重复1次或多次

?     表示重复0次或1次

{n}    重复n次

{n,}   重复n次或多次

{n,m}   重复n次或m次  

  在量词后面加上?就变成了非贪婪匹配,也叫惰性匹配

   忘川和忘清和忘了学习

忘.?  忘川 忘清 忘了  ?0次或1次

忘.*    忘川和忘清和忘了学习  0次或多次

忘.+   忘川和忘清和忘了学习 1次或多次

忘.{1,2}   忘川和 忘清和  忘了学  1次或2次

忘.*?    忘 忘 忘   加上?时变成了惰性匹配

忘[川清了学习]*   忘川 忘清  忘了学习

忘[^和]*   忘川 忘清  忘了学习  

  转义符 \

在正则表达式中,有很多有特殊意义的是元字符,比如\n和\s等,如果要在正则中匹配正常的”\n”而不是”换行符”就需要对”\”进行转义,变成’\\’。

但在很多时候这样会很麻烦,所以可以在使用正则时在想要匹配的字符串前加上r    eg: r’\n’

  贪婪匹配+?

*?    重复任意次,但尽可能少重复
+?   重复1次或更多次,但尽可能少重复
??   重复0次或1次,但尽可能少重复
{n,m}?  重复n到m次,但尽可能少重复
{n,}?  重复n次以上,但尽可能少重复

.*?x  重复任意次,直到x出现

  

 

转载于:https://www.cnblogs.com/xfdhh/p/9943489.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158394.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 两种方法在VMware中安装VMware Tools

    两种方法在VMware中安装VMware ToolsVMwareTools的主要作用是虚拟硬件的驱动,鼠标的无缝移出移入,剪贴板共享,共享主机上的文件夹等功能。 方法一1.打开文件夹-Ubuntu17.10amd64(根据自己版本来看)。2.在VMwareWorkstation主界面点击菜单“虚拟机”。会弹出提示框,点击是。3.保持网络状态,等待后台下载,下载后会出现一个压缩包。在下载过程中可能会出现DVD图标…

    2022年5月26日
    38
  • 损失函数loss大大总结_logloss 损失函数

    损失函数loss大大总结_logloss 损失函数1.损失函数:损失函数(lossfunction)是用来评测模型的预测值f(x)与真实值Y的相似程度,损失函数越小,就代表模型的鲁棒性越好,损失函数指导模型学习。根据损失函数来做反向传播修改模型参数。机器学习的目的就是学习一组参数,使得预测值与真值无限接近。2.softmaxloss:它是损失函数的一种,是softmax和cross-entropyloss组合而成的损失函数。先看softmax,其函数形式如下:其中zj就是某个神经网络全连…

    2022年4月19日
    117
  • ??牛客网–点菜问题(01背包问题)

    ??牛客网–点菜问题(01背包问题)

    2021年5月18日
    139
  • 使用opkg update时遇到wget returned 4错误

    使用opkg update时遇到wget returned 4错误环境:OpenWrt虚拟机,NAT网卡,网络连接正常解决办法:先使用wget下载opkgupdate中提示安装失败的安装包,再使用opkgupdate参考资料:SOLVED:FailedtodownloadthepackagelistArcherC7v2withLEDE17.01.0…

    2022年5月30日
    241
  • GPS数据格式解析「建议收藏」

    GPS数据格式解析「建议收藏」                     GPS数据格式解析简介GPS发送数据以行为单位,数据格式如下:$信息类型,x,x,x,x,x,x,x,x,x,x,x,x,x每行以字符”$”开头,以<CR><LF>为结尾,CR—CarriageReturn,LF—LineFeed,表示回车和换行。信息类型有以下几种,如表1…

    2022年6月30日
    88
  • 架构设计:微服务模式下,实现灰度发布模式

    架构设计:微服务模式下,实现灰度发布模式

    2020年11月20日
    190

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号