《Python核心编程》读书笔记(正则表达式)
正则表达式(RE):由字符和特殊符号组成的字符串 常见的符号和字符 记号 说明 样例 literal 匹配字符串的值 foo rel1 **|** rel2 匹配正则表达式rel1或rel2 foo|bar . 匹配任何字符(换行符除外) b.b (1): ^ 匹配字符串的开始 ^Dear $ 匹配字符串的结尾 /bin/*sh$ (2): * 匹配前面出现的正则表达式零次或多次 [A-Za-z0-9] + 匹配前面出现的正则表达式一次或多次 [a-z]+.com ? 匹配前面出现的正则表达式零次或一次 goo? {N} 匹配前面出现的正则表达式N次 [0-9]{3} {M,N} 匹配重复出现M次到N次的正则表达式 [0-9]{3,5} [...] 匹配字符组里出现的任意一个字符 [aeiou] [..x-y..] 匹配从字符x到y中的任意一个字符 [0-9],[A-Za-z] [^...] 不匹配此字符集中出现的任何一个字符 [^aeiou],[^A-Za-z] c 逐一匹配特殊字符c(即取消它的特殊含义,按字面匹配) .,..,* (1):^,$,b,B (2):“贪心” (3)特殊字符: (4) re模块:核心函数和方法 group(),groups(): group() 返回所有匹配对象/根据要求(括号中填入数字)返回某个特定自组 groups() 返回一包含唯一/所有自组的元组 若无:group()返回所有匹配对象,groups()返回一空元组 match(pattern,string,flags = 0) >>>m = re.match('(www)-(ddd)','abc-123')
>>>m.group()
'abc-123'
>>>m.group(1) #若(a(b)) 则group(1)为先出现的括号(即(ab))
'abc'
>>>m.group(2)
'123'
>>>m.groups()
('abc','123')
>>>patt = '^(w){3}' # 不等于 (w)(w)(w),group(3)为第三个(w)
#而此group(1)一直被替换
search(pattern,flags = 0) findall(pattern,string [,flags]) finditer(pattern,flags]) split(pattern,max = 0) sub(pattern,repl,max = 0) subn() 与sub()同,返回一元祖 (..,..):替换后的字符串和表示替换次数的数字 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |