摘要: compile(pattern,flags=0) 1.编译一个正则表达式模式,返回一个模式对象 2.第二个参数flags是匹配模式,可以使用按位或‘|'表示同时生效,也可以在正则表达式字符串中指定 Pattern对象是不能直接实例化的,只能通过compile方法得到 1)re.I(re.IGNORE 阅读全文
posted @ 2018-03-13 17:37 筱筱的春天 阅读(1470) 评论(0) 推荐(0)
摘要: 正则表达式中,group()用来提出分组截获的字符串,()用来分组 eg: 阅读全文
posted @ 2018-03-06 17:40 筱筱的春天 阅读(443) 评论(0) 推荐(0)
摘要: 为了在文本操作时忽略大小写,需要在使用re 模块的时候给这些操作提供re.IGNORECASE 标志参数。比如 >>> text = 'UPPER PYTHON, lower python, Mixed Python'>>> re.findall('python', text, flags=re.I 阅读全文
posted @ 2018-03-06 17:36 筱筱的春天 阅读(7972) 评论(0) 推荐(0)
摘要: re.sub的功能 re是regular expression的缩写,表示正则表达式;sub是substitude的缩写,表示替换 re.sub是正则表达式的函数,实现比普通字符串更强大的替换功能 sub(pattern,repl,string,count=0,flag=0) 1))pattern正 阅读全文
posted @ 2018-03-06 15:38 筱筱的春天 阅读(42334) 评论(4) 推荐(0)
摘要: 1. 使用find()方法 >>> text = 'yeah, but no, but yeah, but no, but yeah' >>> text.find('no')10 2. 使用re.match() 对于复杂的匹配需要使用正则表达式和re 模块。为了解释正则表达式的基本原理,假设想匹配数 阅读全文
posted @ 2018-02-12 12:14 筱筱的春天 阅读(883) 评论(0) 推荐(0)
摘要: 问题:想使用Unix Shell 中常用的通配符(比如*.py , Dat[0-9]*.csv 等) 去匹配文本字符串 解决方案: 1. fnmatch 模块提供了两个函数—— fnmatch() 和fnmatchcase() ,可以用来实现这样的匹配。 用法如下:>>> from fnmatch 阅读全文
posted @ 2018-02-09 10:58 筱筱的春天 阅读(1063) 评论(0) 推荐(0)
摘要: 问题 需要通过指定的文本模式去检查字符串的开头或者结尾,比如文件名后缀,URLScheme 等等。 解决方案 1.检查字符串开头或结尾的一个简单方法是使用str.startswith() 或者是str.endswith() 方法。比如: eg1:>>> filename = 'spam.txt'>> 阅读全文
posted @ 2018-02-06 17:49 筱筱的春天 阅读(27216) 评论(0) 推荐(2)
摘要: 1.了解正则表达式 正则表达式是对字符串操作的一种逻辑公式,是用来匹配字符串的非常强大的工具,利用正则表达式来提取想要的内容。 正则表达式的大致匹配过程如下 1)依次拿出表达式和文本中的字符比较 2)如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。 3)如果表达式中有量词或边界 阅读全文
posted @ 2018-01-22 16:23 筱筱的春天 阅读(383) 评论(0) 推荐(0)
摘要: str.split() 单一分隔符,使用str.split()即可 str.split不支持正则及多个切割符号,不感知空格的数量 re.split() 多个分隔符,复杂的分隔情况,使用re.split 原型: re.split(pattern, string, maxsplit=0) 通过正则表达式 阅读全文
posted @ 2018-01-22 15:36 筱筱的春天 阅读(24575) 评论(0) 推荐(1)
摘要: Python正则表达式匹配反斜杠 "\" eg: >>>a='w\w\w' 'w\\w\\w' # 打印出来的 "\\" 被转义成 一个反斜杠 "\" 如果需要匹配字符串a,需要匹配一个反斜杠 "\" >>>re.split(r'\\',a) ['w','w','w',] 先对字符串转义,再进行正则 阅读全文
posted @ 2018-01-19 18:07 筱筱的春天 阅读(1414) 评论(0) 推荐(0)