Python—正则表达式
正则表达式是对字符串操作的一种逻辑公式
whyfail
编程界崇尚以简洁优雅为美,很多时候,如果你觉得一个概念很复杂,那么很可能是你理解错了!
展开
-
Python之贪婪模式和非贪婪模式
贪婪模式 python中数量词默认是贪婪的,总是尝试匹配尽可能多的字符。 非贪婪模式 与贪婪相反,总是尝试匹配尽可能少的字符,可以使用’*‘、’?’、‘+’、{m,n}后面加上?,使贪婪模式变成非贪婪模式。 示例 import re v1 = re.match(r'(.+)(\d*-\d*)', '1327-48949') # 贪婪模式 v2 = re.match(r'(.+?)(\d*-\d...原创 2019-12-05 21:27:05 · 598 阅读 · 0 评论 -
Python之匹配分组
匹配分组 语法 | : 匹配左右任意一个表达式 (ab) : 将括号中的字符作为一个分组 \num : 引用分组num匹配到的字符串 (?p<name>) : 分别起组名 (?p=name) : 引用别名为name分组匹配到的字符串 | 示例 # 匹配0-100之间所有的数字 import re pattern = r'[0-9]?\d$|100$' v1 = re.ma...原创 2019-12-05 21:00:24 · 841 阅读 · 0 评论 -
Python之边界表示符
表示边界 ^ : 匹配字符串开头 $ : 匹配字符串结尾 \b : 匹配一个单词的边界 \B : 匹配非单词的边界 示例 # 匹配QQ邮箱 5-8位的数字+qq.com import re pattern01 = '[\d]{4,7}@qq.com' # 不使用结尾符 pattern02 = '[\d]{4,7}@qq.com$' # 使用结尾符 v1 = re.match(patte...原创 2019-12-05 20:36:41 · 986 阅读 · 0 评论 -
Python之原始字符串
原始字符串 python中字符串前边加上 r 表示原始字符串 实例 # 匹配一个随机密码8-20位以内 import re pattern = r'\\\\n' v1 = re.match(pattern, '\\\\n123') v2 = re.match(pattern, '\\\\\n222') v3 = re.match(pattern, '\\n123') print(v1) p...原创 2019-12-05 20:19:14 · 246 阅读 · 0 评论 -
Python之正则表达式模式
表示数量(匹配多个字符) 语法 * : 匹配前一个字符出现0次或者无限次(可有可无) + : 匹配前一个字符出现1次或者无限次(至少有1次) ? : 匹配前一个字符串出现1次或者0次(要么1次要么没有) {m} : 匹配前一个字符出现m次 {m,} : 匹配前一个字符至少出现m次 {m,n} : 匹配前一个字符出现m到n次 示例 * 示例 import re pattern = '\d*'...原创 2019-12-05 20:15:15 · 423 阅读 · 0 评论 -
Python之 re模块
re模块之match的基本使用 语法 result = re.match(正则表达式,要匹配的字符串) 意义 re.match是用来进行正则匹配检查的方法,如果字符串开头的0个或多个字符匹配正则表达式,则返回相应的match对象;如果不匹配模式,返回None(注意,不是返回空字符串‘ ’) 匹配对象Macth Object具有group()方法,用来返回字符串的匹配部分,具有span()方法。返...原创 2019-12-05 19:28:36 · 420 阅读 · 0 评论 -
Python之正则表达式
概念 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的字符的组合,组成以恶搞‘规则字符串’,这个‘规则字符串’用来表达对字符串的一种过滤逻辑(可以用来做检索,截取或者特换操作)。 作用 给定的字符串是否符合正则表达式的过滤逻辑(称为‘匹配’)。 可以通过正则表达式,从字符串中获取我们想要的特定部分。 还可以对目标字符串进行替换操作。 python中的正则...原创 2019-12-05 19:14:11 · 83 阅读 · 0 评论