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

常用的搜索引擎网站中文企业网站模板下载

常用的搜索引擎网站,中文企业网站模板下载,php开发网站的优势,门户网站建设公司价位1前言 正则表达式(Regular Expression)是一种用来描述字符串模式的表达式。它是一种强大的文本匹配工具,可以用来搜索、替换和提取符合特定模式的文本。 正则表达式由普通字符(例如字母、数字、符号等)和元字符&#…

1前言

正则表达式(Regular Expression)是一种用来描述字符串模式的表达式。它是一种强大的文本匹配工具,可以用来搜索、替换和提取符合特定模式的文本。

正则表达式由普通字符(例如字母、数字、符号等)和元字符(用于描述模式的特殊字符)组成。通过结合这些字符,可以创建一个模式,用来匹配文本中符合特定规则的部分。

 正则表达式在我们日常开发中十分常用,可以用来数据提取文本处理,同时也是面试中比较常问的问题,学好正则表达式是Python开发工程师的必备项!

看了一下网上很多正则表达式的文章,对于小白来说实在有点难接受

1  符号 .

匹配任意的单个字符

import re
context = '''苹果是绿色的,橘子是黄色的,头发是黑色的
'''
##  r 表达不发生转义
p = re.compile(r'.色')
print(p.findall(context))
## ['绿色', '黄色', '黑色']

2  符号 *

匹配前面子表达式任意次(包括0次)  常常与 .  搭配使用

p = re.compile(r'是.*')
print(p.findall(context))
#['是绿色的,', '是黄色的,', '是黑色的']
p = re.compile(r'.*是')
print(p.findall(context))
#['苹果是', '橘子是', '头发是']
context = "我是是是是大帅哥,\n你是嘿嘿黑,\n欸我的饭呢"
p = re.compile(r'是*')
print(p.findall(context))
#['', '是是是是', '', '', '', '', '', '', '是', '', '', '', '', '', '', '', '', '', '', '']

3  符号 +

和 * 类似   表示至少出现一次

context = "我是是是是大帅哥,\n你是嘿嘿黑,\n欸我的饭呢"
p = re.compile(r'是+')
print(p.findall(context))
#['是是是是', '是']

4  符号 {}

指定匹配次数    

p = re.compile(r'是{2,5}')
#print(p.findall(context))
#['是是是是']
context = '''我的电话号码是12345678901,地址在深圳技术大学'''
p = re.compile(r'\d{11}')
print(p.findall(context))
#['12345678901']

5  符号 ?

是否贪心:

贪婪模式和非贪婪模式

'*' '+' 都是贪心的,会尽量多地匹配

在  '*'  '+'  之后加上  '?'  表示非贪心

context = '''<1><2><3><4>'''
p = re.compile(r'<.*?>')
#print(p.findall(context))
#['<1>', '<2>', '<3>', '<4>']
p = re.compile(r'<.*>')
#print(p.findall(context))
#['<1><2><3><4>']     #贪心

 6  符号 \

①转义

②特定字符

\d  匹配数字                      \D     匹配不是数字的

\s  匹配任意地空白字符    \S     匹配非空白

\w 匹配文字字符(数字、字母、下划线)\W 匹配非文字字符

7  符号 [] 

context = '''
leo,qq1234567890,18
penry,qq2234567890,19
anry,qq09878976454,20
makerry,qq1456789091,18'''
p = re.compile(r'qq[123]\d{9}')
print(p.findall(context))
#['qq1234567890', 'qq2234567890', 'qq1456789091']

 8  符号 ^  

非  与 [] 搭配   也可以表示匹配开口

context = "abc123,123abc,hekl1,his12,213f,abc"
p = re.compile(r'[a-z]+[0-9]{3}')
#print(p.findall(context))
#['abc123']
p = re.compile(r'[^0-9]{3}')
print(p.findall(context))
#['abc', 'abc', ',he', ',hi', 'f,a']

单行模式:匹配文本的起始位置

多行模式:匹配文本每行的起始位置

context = '''
001-apple-60,\n
002-pear-70,\n
003-banner-30'''
p = re.compile(r'^\d+',re.MULTILINE)  ##   缺省是单行    M是多行模式    
print(p.findall(context))
#['001', '002', '003']

9  符号 $

从文本末开始匹配

context = '''
001-apple-60
002-pear-70
003-banner-30'''
p = re.compile(r'^\d+',re.MULTILINE)  ##   缺省是单行    M是多行模式    
print(p.findall(context))
#['001', '002', '003']
p = re.compile(r'\d+$',re.MULTILINE)
print(p.findall(context))
#['60', '70', '30']

10  符号 () 

分组提取

context = '''
苹果是绿色的,\n橘子是黄色的,\n头发是黑色的
'''
##   消除标识符
p = re.compile(r'(.+)是')
#print(p.findall(context))
#['苹果', '橘子', '头发']
p = re.compile(r'(.+)是(.+色)的')
#print(p.findall(context))
#[('苹果', '绿色'), ('橘子', '黄色'), ('头发', '黑色')]
context = '''
leo,qq1234567890,18
penry,qq2234567890,19
anry,qq09878976454,20
makerry,qq1456789091,18'''
p = re.compile(r'(.+),qq([123]\d{9})')
#print(p.findall(context))
#[('leo', '1234567890'), ('penry', '2234567890'), ('makerry', '1456789091')]

11  \number

分组概念的举例:匹配ABAC或者AABB的成语

引用前面匹配的第n个组的内容

## 找出 ABAC AABB 型的成语
#           123        45    6
pattern = r'(((.).\3.)|((.)\5(.)\6))'
#              A B AC |  A  A B  B
## 找出 AABC ABAC 型的成语
#           123        45
pattern = r'(((.)\3..)|((.).\5.))'
#              A  ABC    A B AC

看到这里你已经掌握了基本的正则表达式的使用‘姿势’了,在日常的大部分使用场景中都足以应对了,恭喜你!

http://www.yayakq.cn/news/307487/

相关文章:

  • 游戏网站规划方案招聘网站建设维护
  • 宁波海曙网站开发公司电话微信网站建设方案ppt
  • ecilpse做网站wordpress的模板文件下载
  • 网站建设专业性的评价php做网站界面代码
  • 桂林北站附近景点关键词制作软件
  • 移动网站建设服务商品牌推广营销
  • 无经验可以做网站编辑吗云优cms
  • 手机网站建设规划书挂网站需要什么服务器
  • 做网站销售水果p2p金融网站开发
  • 线上网站开发系统流程图网站开发的相关技能
  • 平台网站建设公司随州网络科技有限公司
  • 西宁网站建设价格低做网站的公司重庆
  • 闽侯福州网站建设深圳松岗 网站建设
  • 一般做海报的图片跟哪个网站下载wordpress comment
  • 婚介网站建设的策划天眼查企业查询在线官网
  • 网站建设最低要求长春网站建设推广优化
  • 网站页面一般做多大wordpress清理过期文件
  • 婺源网站建设网站开发接口文档模板
  • 西安网站建设项目武侯区网站建设
  • 微网站是自己做可以不江西南昌网站建设招标
  • 广州建设外贸网站凡科免费建站
  • 自己做直播网站玉树wap网站建设
  • 景宁县建设局网站市场调研报告范文3000字
  • 没有网站如何做SEO推广有用吗网叶制作
  • 密云广州网站建设学校品牌建设
  • dedecms 门户网站国际局势最新消息今天
  • 网站开发所需要的书籍在长沙做网站需要多少钱
  • 私人服装定制网站用wordpress教程视频
  • 深圳市网站开发坂田附近商品推广软文写作500字
  • 口碑好网站建设价格网站主题页