python - 标准库

mac2024-10-14  78

python - 标准库

正则表达式库re正则表达式的元字符正则表达式分组功能实例

python标准库的内容:https://docs.python.org/3/library/index.html

正则表达式库re

import re p = re.compile('ca*t') print (p.match('caaaat'))

正则表达式的元字符

.可以匹配任意个字符

^以什么样的内容开头

$以什么样的内容作结尾

*匹配前面的字符出面0次或多次

?表示字符出现0次或多次(?还有更多作用)

{m}表示大括号里面必须填写内容

单个元字符: . ^ $ * + ? {m} {m,n} [] |

转义元字符:\d \D \s {}

\d:表示匹配的字符是数字,出现多次,[0-9][0-9][0-9] 和 [0-9] + 表达的意思是一样的\D:表示匹配不包含数字的\s:表示匹配字符串{}:^$: 表示空行.?:表示不使用贪婪模式(abcccccccd. adc?) 只匹配第一个匹配的内容 # * 前面的字符出现0次或多次 p = re.compile('ca*t') print (p.match('ct')) # {m} m表示次数 p = re.compile('ca{4}t') print (p.match('caaaat')) c[bcd]t. 只匹配cbt、cct、cdt cat cbt cct cdt 2019-11-04 提取年份:(2019)-(11)-(04).group() 2019-11-04 2019-04-11 (11|04)

正则表达式分组功能实例

import re p = re.compile('.{3}') # 表示任意字符出现3次 print (p.match('abc')) #匹配年月日 p = re.compile('....-..-..') or p = re.compile(r'\d-\d-\d') # r不转义 print (p.match('2018-05-01')) print (r'\n x \n') # 加r 表示特殊符号不进行转义 p = re.compile(r'(\d+)-(\d+)-(\d+)') # 年月日不进行分组 使用(),+ 表示连续的数字
最新回复(0)