栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

正则表达式 (c++ python)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

正则表达式 (c++ python)

正则表达式 匹配文法(规则)
  • ^ : 表示匹配字符串的起始位置
  • ? : 表示匹配起前面的子表达式(或字符) 0 次或一次
  • * : 表示匹配前面的子表达式任意次
  • + : 表示匹配前面的子表达式至少一次 , 例如a+b 可以匹配 aab , aaab, aaaab,…
  • {n} : n 是一个非负整数。匹配确定的 n 次。例如,‘o{2}’ 不能匹配 “Bob” 中的 ‘o’,但是能匹配 “food” 中的两个 o
  • {n,} : 至少匹配n 次,请注意在逗号和两个数之间不能有空格。
  • {n,m} : m 和 n 均为非负整数,其中n <= m。表示最少匹配 n 次且最多匹配 m 次,请注意在逗号和两个数之间不能有空格。
  • [0-9]+ : [0-9] 匹配**[]内的单个字符**,如[a-z0-9]等
  • [^ ] : 方括号内 ^表示 否定,表示不匹配括号内的任意一个字符
  • abc$ : $为匹配字符串结束,这里表示为以abc为结尾
  • . : 匹配除换行符(n、r)之外的任何单个字符,相等于 [^nr]
  • w : 匹配字母、数字、下划线。等价于 [A-Za-z0-9_]
  • [sS] :匹配所有。s 是匹配所有空白符,包括换行,S 非空白符,不包括换行。
python re模块

Python 正则表达式 | 菜鸟教程 (runoob.com)

re是python内置模块,使用时直接导入即可

方法说明
compile(pattern)编译正则表达式,生成一个正则表达式( Pattern )对象,供 match() 和 search() 这两个函数使用
search(pattern, string)扫描整个字符串并返回第一个成功的匹配, 否则返回None
match(pattern, string)尝试从字符串的起始位置匹配一个模式(pattern),如果不是起始位置匹配成功的话,match() 就返回 none
split(pattern, string)按照能够匹配的子串将字符串分割后返回列表
findall(pattern, string)在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果有多个匹配模式,则返回元组列表,如果没有找到匹配的,则返回空列表

实例

# -*- coding:UTF8 -*-
 
import re
 
pattern = re.compile(r'd+')   # 查找数字
result1 = pattern.findall('runoob 123 google 456')
result2 = pattern.findall('run88oob123google456', 0, 10)
 
print(result1) #['123', '456']
print(result2) #['88', '12']
import re

result = re.findall(r'(w+)=(d+)', 'set width=20 and height=10')
print(result) #[('width', '20'), ('height', '10')]
c++正则表达式库 regex
方法说明
regex表示一个正则表达式的类
regex_match将一个字符与一个正则表达式匹配
regex_search寻找第一个与正则表达式匹配的子序列
regex_replace使用给定格式替换一个正则表达式
sregex_iterator迭代器适配器,调用regex_search来遍历一个string中所有匹配的字串
smatch容器类,保存在string中搜索的结果
ssub_matchstring中匹配的子表达式的结果

如查找一个违反拼写规则的单词:i 除非在 c 之后, 否则必须在 e 之前

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/987021.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号