头部背景图

python re模块--常用的正则符号

:soogor 2022-09-10 17:46:26 :25
常用的正则符号:英文状态的句号点 .英文状态下的中括号 []英文状态下的圆括号 ()英文状态的大括号 {}英文状态下的问号 ?加号 +星号 *反斜杠 \1、英文状态的句号点 . :指代除了换行符\n以外的任意字符。

常用的正则符号:

  1. 英文状态的句号点 .
  2. 英文状态下的中括号 []
  3. 英文状态下的圆括号 ()
  4. 英文状态的大括号 {}
  5. 英文状态下的问号 ?
  6. 加号 +
  7. 星号 *
  8. 反斜杠 \

 

1、英文状态的句号点 . :指代除了换行符\n以外的任意字符。

import re
s = 'Life was like a box of chocolates, you never know what you are gonna get'
f1 = re.findall('chocol.....', s)
f2 = re.findall('chocol\n....', s) 
print(f1)
print(f2)

# f1输出结果: ['chocolates,']
# f2输出结果: []

2、英文状态下的中括号 []:中括号内的内容指代所需查找字符集合。

  • [0-9]:表示0123456789
  • [a-z]:表示小写的26个字母
  • [A-Z]:表示大写的26个字母
import re
s = '123456789chocolates123456789'
f = re.findall('o[clz]', s)  # [cl]表示'c'或者'l'或者'z' 
f1 = re.findall('[0-9]', s)  
f2 = re.findall('[a-z]', s)  
print(f)
print(f1)
print(f2)

# f输出结果: ['oc', 'ol']
# f1输出结果: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '1', '2', '3', '4', '5', '6', '7', '8', '9']
# f2输出结果: ['c', 'h', 'o', 'c', 'o', 'l', 'a', 't', 'e', 's']

3、英文状态下的圆括号 ():圆括号内的内容就是别截取的内容。

import re
s = 'Life was like a box of chocolates, you never know what you are gonna get'
f = re.findall('choco(lates)', s)  # 输出圆括号内的内容
print(f)

# f输出结果: ['lates']

4、英文状态的大括号 {}:大括号内的内容表示匹配前一个字符特定的次数或范围。

  • {m}:匹配前一个字符m次;
  • {m,}:匹配前一个字符至少m次;
  • {,n}:匹配前一个字符至多n次;
  • {m,n}:匹配前一个字符m~n次;
import re
s = '123456789chocolates'
f = re.findall('1\d{3}', s)   # \d:代表0~9任一数字,{3}:指匹配大括号前一个字符3次
f1 = re.findall('1\d{3,}', s)   # {3,}:指匹配大括号前一个字符至少3次
f2 = re.findall('1\d{,5}', s)   # {3,5}:指匹配大括号前一个字符至多5次
f3 = re.findall('1\d{3,5}', s)   # {3,5}:指匹配大括号前一个字符至少3次,至多5次
print(f)
print(f1)
print(f2)
print(f3)

# f输出结果: ['1234']
# f1输出结果: ['123456789']
# f2输出结果: ['123456']
# f3输出结果: ['123456']

5、英文状态下的问号 ?:问号表示匹配问号前一个字符0次或1次。

import re
s = '123456789chocolates123456789'
f = re.findall('9.?', s)  
print(f)

# f输出结果: ['9c', '9']

6、加号 +:加号表示匹配前一个字符1次以上。

import re
s = '123456789chocolates123456789'
f = re.findall('o.+', s)
f1 = re.findall('[0-9]+', s)
f2 = re.findall('[a-z]+', s)
print(f)
print(f1)
print(f2)

# f输出结果:  ['ocolates123456789']
# f1输出结果: ['123456789', '123456789']
# f2输出结果: ['chocolates']

7、星号 * :星号表示匹配前一个字符0次以上。

import re
# 找出列表中含有‘chocolates'的所有元素
lis1 = ['123456789chocolates123456789', 'chocolates123','chocolates', '123456789']
lis2 = []
for s in lis1:
    lis2.extend(re.findall('[0-9]*chocolates', s))
print(lis2)

# lis2输出结果: ['123456789chocolates', 'chocolates', 'chocolates']

8、反斜杠 \ :是转义符,用于转换特定字符含义的符号。

  • \n:指代换行;
  • \t:指代Tab制表符;
  • \d:指代0~9中的任一数字;
  • \s:指代任意一种空白(如空格、Tab、换行等);
  • \S:指代任何非空白字符;
  • \w:指代字母、数字和下划线中的任意一种;
  • \.:指代句号点.本身;
import re
s = '123456789        chocolates         123456789'
f = re.sub('\s', '', s)  # 将s中所有空白替换为空
print(f)

# f输出结果:  123456789chocolates123456789
本文编辑:soogor
暂无评论,期待你的首评
wordpress下载类主题(为什么都推荐使用wordpress而不是phpcms这些国内的CMS呢)

[IT百科]wordpress下载类主题(为什么都推荐使用wordpress而不是phpcms这些国内的CMS呢)

该如何选择服务器有哪些质感优雅细节完美的WordPress主题为什么都推荐使用wordpress而不是phpcms这些国内的CMS呢首先,不
2022年9月19日 01:30
releasesemaphore(在semaphore.c文件内的pswaitforsemaphore和psreleasesemaphore函数中,为什么要使)

[编程]releasesemaphore(在semaphore.c文件内的pswaitforsemaphore和psreleasesemaphore函数中,为什么要使)

printf(“Consumer%2d finish consuming %2d:\n “,m_serial,m_thread_reques
2022年9月17日 01:30
打开网页会出现“Internet Explorer无法打开站点已终止操作”?打开网站经常显示 ie无法打开internet站点,,,已终止操作

[IT百科]打开网页会出现“Internet Explorer无法打开站点已终止操作”?打开网站经常显示 ie无法打开internet站点,,,已终止操作

解决的方法和详细的操作步骤如下:1、第一步,点击“工具”菜单/Internet选项/在“常规”标签下点击“删除cookies(I)”,在默认选项下,打开网页会出现“Internet Explor...
2022年8月24日 23:00
我可以在win10上安装在 Kubernetes 上安装 KubeSphere v3.1.1 这个工具吗?win10强制还原系统

[IT百科]我可以在win10上安装在 Kubernetes 上安装 KubeSphere v3.1.1 这个工具吗?win10强制还原系统

点击“疑难解答”;进入恢复模式,按住shift键之后点击“重启”也可以进入启动菜单,点击“重置”;进入恢复模式,3、电脑再次重启后就可以看到启用安全模式的选项了,3、点击...
2022年8月16日 14:00
Authorized signature的中文意思?求助:91安装软件提示:wrong local header signature:0x2BC0A0D

[IT百科]Authorized signature的中文意思?求助:91安装软件提示:wrong local header signature:0x2BC0A0D

文件下载不完整,***主要就是文件 下载不完整***重新下载就解决这问题,印鉴样本authorized signature 有权签字人的签字signature tune 信号曲,音调signature line...
2022年8月12日 02:00
虚拟机VMware怎么完全卸载干净?虚拟机vmware怎么完全卸载干净

[IT百科]虚拟机VMware怎么完全卸载干净?虚拟机vmware怎么完全卸载干净

虚拟机VMware怎么完全卸载干净1、首先,需要停止虚拟机VMware相关服务。按下快捷键WIN+R,打开windows运行对话框,输入【services.msc】,点击确定。2、在服务管理中,...
2022年7月19日 03:30
python re.error: unbalanced parenthesis at position 104...解决办法

[Python]python re.error: unbalanced parenthesis at position 104...解决办法

可以考虑是不是小括号的错误,检查一下小括号是不是成对的这样报错考验的的确是应用工程上的经验,不过貌似没有啥技术含量?debug的技术只有在工程应用上有说明今天发现...
2022年6月24日 00:36
withpleasure是什么意思?Switch游戏手柄品牌哪家比较好

[IT百科]withpleasure是什么意思?Switch游戏手柄品牌哪家比较好

withpleasure是什么意思with pleasure[英][wið ˈpleʒə][美][wɪð ˈplɛʒɚ]欣然; 愉快地, 高兴地, 没问题; 例句:1.Then I accept with p...
2022年6月1日 05:00
Copyright © 2022 All Rights Reserved 山东上格信息科技有限公司 版权所有

鲁ICP备20007704号

Thanks for visiting my site.