正则表达式 整理

Posted oldboy2019

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式 整理相关的知识,希望对你有一定的参考价值。

re.findall  匹配到正则表达式的字符,匹配到的每个字符存入一个列表,返回一个匹配到的所有字符列表
一. 匹配单个字符
import re
# \w 匹配所有字母、数字、下划线
re.findall(\w,abcd_123    *-)
# 结果为:[‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘_‘, ‘1‘, ‘2‘, ‘3‘]


# \s 匹配所有不可见字符
#  不可见字符有:\n \t 空格
re.findall(\s,abcd \n\tdf21  )
# 结果为:[‘ ‘, ‘\n‘, ‘\t‘, ‘ ‘, ‘ ‘]


# \d 匹配所有数字
re.findall(\d,a1bc3 4d \n\tdf21  )
# 结果为:[‘1‘, ‘3‘, ‘4‘, ‘2‘, ‘1‘]


# . 匹配\n换行符以外的所有可见和不可见字符
re.findall(., c3 d\n\td1)
# 结果为:[‘c‘, ‘3‘, ‘ ‘, ‘d‘, ‘\t‘, ‘d‘, ‘1‘]

二. 匹配多个字符

#匹配多个字符:* + ? {}
import re
#  * 匹配0或n次
re.findall(\d*, 1a23)
# 结果为:[‘1‘, ‘‘, ‘23‘, ‘‘]


#  + 匹配1或n次
re.findall(\d+, 1a23)
# 结果为:[‘1‘, ‘23‘]
#前面2个是叫贪婪匹配


#  ? 匹配0或1次
re.findall(\d?, 1a3)
# 结果为:[‘1‘, ‘‘, ‘3‘, ‘‘]
# 这个叫非贪婪匹配

三. 匹配指定范围字符

# {m,n} 匹配最少m次,最多n次
# {m} 只匹配m次的
# {,n}  匹配最大n次,最小次数不限
# {m,}  匹配最小m次,最大次数不限
re.findall(\d{2,4}, 1a33g134nn12345)
# 结果为:[‘33‘, ‘134‘, ‘1234‘]
re.findall(a{3}, 1aaa3*G+1aaaan#b)
# 结果为:[‘aaa‘, ‘aaa‘]


# | 匹配 或 语法的字符
re.findall(1|23|4, 1a33g134nn12345)
# 结果为:[‘1‘, ‘1‘, ‘4‘, ‘1‘, ‘23‘, ‘4‘]


# [ ] 匹配括号内的字符(只匹配单个)
re.findall([123], 1a33g134nn12345)
# 结果为:[‘1‘, ‘3‘, ‘3‘, ‘1‘, ‘3‘, ‘1‘, ‘2‘, ‘3‘]
re.findall([0-9a-zA-Z], 1a3*G+1n#)
# 匹配0到9或者a到z或者A到Z单个字符
# 结果为:[‘1‘, ‘a‘, ‘3‘, ‘G‘, ‘1‘, ‘n‘]


# ^x 行首匹配
# x$ 行尾匹配
re.findall(^1, 1a3*G+1n#b)
re.findall(1$, 1a3*G+1n#b)
# 结果为:[‘1‘]     
# 结果为:[‘b‘]

 

 

 

未完待续...

以上是关于正则表达式 整理的主要内容,如果未能解决你的问题,请参考以下文章

常用的JQuery数字类型验证正则表达式整理

text 正则表达式片段

markdown 正则表达式模式片段

正则表达式匹配特定的 URL 片段而不是所有其他 URL 可能性

循环通过 python 正则表达式匹配

asp.net 使用正则表达式验证包含打开/关闭括号片段的属性字符串