day23 正则,re模块
一、 简谈正则表达式 元字符 ??????? . 除了换行符外任意字符。 ??????? w 数字、字母、下划线 ??????? s 空白符 ??????? b 单词的末尾 ??????? d 数字 ????????????? n 匹配换行符 ????????????? t 匹配制表符 ??????? W 除了数字。 字母 下划线 ??????? D 除了数字 ??????? S 除了空白符 ??????? ^? 开头 ??????? $ 结尾 ??????? […] 字符组 ??????? [^…] 除了字符组内的元素外 ? ? ? ?()匹配括号内的表达式,也表示一个组 ? ??????? 量词 限定符 ??????? * ??{0,n} ??????? + ?{1,n} ??????? ? ??{0,1} ??????? {p} ?p次 ??????? {p,} ?p次或更多次 ??????? {p,q} 从p到q次 ? ? ? ? ? ?贪婪匹配和惰性匹配 ? ? ? ? ? *,+,{},都属于贪婪——即尽可能多的匹配 ? ? ? ? ? 在使?用.*后?面如果加了? 则是尽可能的少匹配. 表?惰性匹配 ? ? ? ? ? 正则中转义 在前加? 如 n 表示 n ????????????? 二、 re模块 findall()获取到匹配的所有内容 返回list 在pycharm中可能因()优先权,而得不到所要的结果,可用(?:取消优先权) finditer()匹配到所有内容。 返回迭代器 search() 搜索。查到了就返回 ?查不到返回None match() 匹配. 从头开始匹配 匹配不到就报错 split()切割,可多个,在pycharm中用()包裹表达式可保留切割位置 sub()替换 同理() 可显示替换多少次 compile() 表达式预加载 (?P<name>正则)? 给表达式起名 可调用查看 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |