整理的正则表达式笔记



最近在学python中的re模块 自己打印了一份正则表达式资料,看了一中午的笔记,拿出来和大家分享。

纯文本正则可匹配 i标志 强行不区分大小写

c.t 匹配 cat cbt。。。。 .匹配任意单个字符

..任意两个字符

[ab]只匹配ab

[a-zA-Z0-9]

取色#[a-fA-F0-9][a-fA-F0-9][a-fA-F0-9][a-fA-F0-9][a-fA-F0-9][a-fA-F0-9]

改良取色#[a-fA-F0-9]{6}

[^0-9]非匹配

[0-9]反斜线转义匹配方括号

\d任意数字 \D非数字

\w 等价于[a-zA-Z0-9_] \W非w

匹配邮箱:\[email protected]\w+.\w+ ok

改良匹配邮箱:[a-zA-Z0-9]\[email protected]\w+.\w+[a-zA-Z] ok

+匹配一个或多个

*匹配0个到多个

?匹配0个或1个

http://[\w./]+ 匹配网站

\s任意空白字符

\x 16 \0 8进制

\b+匹配连续多个字符

(?m)将换行符视为分隔符 将每一行字符串匹配出来

{5}重复五次

{2,4}2-4次

{2,}至少2次

贪婪型 * 、+、{123}

懒惰型 *?、+?、{123}?

\b单词边界

\B?????????????????

^字符串开头

$字符串结尾

(\w+)\1回溯引用

向前查找 .+(?=:)找:前面的东西并且不包含:!!!!

?<=向后查找

(“.://.”)爬取网页 未验证

import requests

import re

r = requests.get(“http://www.baidu.com/s?wd=qqwe%40163.com&rsv_spt=1&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&tn=baiduhome_pg&rsv_enter=1&inputT=5722&rsv_t=c848L7Xor4vFhEoVV9GPzZr2MuYMzFl1%2FETo9cY0rHjXNql5QbkRcKTrFd5hVllmdRaP&rsv_sug3=23&rsv_sug1=14&rsv_sug2=0&rsv_sug4=7428“)

url

res=re.findall(r’(http://.*?)”’,r.text)

color

res=re.findall(r’#[a-fA-F0-9][a-fA-F0-9][a-fA-F0-9][a-fA-F0-9][a-fA-F0-9][a-fA-F0-9]’,r.text)

res=re.findall(r’#[a-fA-F0-9]{6}’,r.text)

mail

res=re.findall(r’[a-zA-Z]\[email protected]\w+.\w+[a-zA-Z]’,r.text)

print(r.text)

url2

res=re.findall(r’https?://[\w./]+’,r.text)

domain

res=re.findall(r’http?://[\w./]+/’,r.text)

img

res=re.findall(r’

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-10 22:58:20

整理的正则表达式笔记的相关文章

c# 正则表达式笔记

c# 正则表达式笔记 正则所需要的命名空间是 using System.Text.RegularExpressions 它包含了8个类,用得最多是的Regex; Regex不仅可以用来创建正则表达式,而且提供了许多有用的方法. 创建一个Regex对象 new Regex(string pattern) new Regex(string pattern,RegexOptions options) 第一个参数是个字符串   第二个参数正则配置的选项 有以下一些选项 IgnoreCase       

整理一下正则表达式教程,浅显易懂些

整理一下正则表达式教程,浅显易懂些 编写验证规则最流行和最简单的方法就是正则表达式了,但唯一的一个问题是正则表达式的语法太隐晦了,让人蛋疼无比.很多开发者为了在项目中应用复杂的验证,经常要使用一些小抄来记住正则式的复杂语法和各种常用命令. 在这篇文章中,我将试图让大家明白什么是正则表达式,以及如何更轻松地学习正则表达式.参考来源: 人人都看得懂的正则表达式教程 http://www.lai18.com/content/424330.html 也许你是初学者,那以防万一,我先来讲讲什么是正则表达式

&lt;&lt;鬼斧神工之正则表达式&gt;&gt;笔记整理

第1章 初识正则表达式 正则表达式定义 正则表达式是一种字符串搜索和匹配的工具 正则表达式应用举例 手机输入法 Windows文件搜索 Linux列出文件命令 网站用户注册 第2章 正则表达式函数解析   PHP中常用的正则表达式函数 $pattern = 正则表达式 $subject = 匹配的目标函数 preg_match($pattern, $subject) preg_match_all($pattern, $subject, array &$matches) Code: $patter

javascript正则表达式笔记(转载)

在javascript里面的定义 1.通过RegExp构造函数定义一个正则表达式.第一个参数为正则表达式以字符串传入,第二个参数为修饰符也以字符串传入. 例:var caps = new RegExp("[A-Z]", "g"); 2.直接定义一个正则表达式直接量,表达式右正斜杠符号"/"分隔,后直接跟修饰符.(推荐用这种) 例:var caps = /[A-Z]/g; javascript正则表达式常用的字符 字符 描述 例子 [exp] 对于

C#程序员整理的Unity3D笔记(6): Git的使用

对程序员而言,写的代码用源码管理系统管理起来,非常方便: 有历史可追溯 方便对比代码变动. 非公司的项目,在没有了解git前,我采用是修改前Ctrl+C.Ctrl+V的方式进行备份.对比,这样导致很多奇奇怪怪的问题,例如手贱的改错了.巧合的是竟然没有备份,于是乎郁闷的查询--.浪费了不少时间. 随着Git的火热,我开始关注有无免费的git--一个很重要的事实: Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理,其背后的故事很有趣. 我了解的G

正则表达式笔记

正则表达式到底是什么东西?在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要.正则表达式就是用于描述这些规则的工具.换句话说,正则表达式就是记录文本规则的代码.常用元字符 代码 说明 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束 常用限定符 代码/语法 说明 * 重复零次或更多次 + 重复一次或更多次 ? 重复零次或一次 {n} 重复n次

javascript正则表达式笔记

g 代表全局匹配m 代表可以进行多行匹配i 代表不区分大小写匹配^ 匹配输入字符串的开始位置$ 匹配输入字符串的结束位置* 匹配前面的子表达式零次或多次. 等价于{0,}+ 匹配前面的子表达式一次或多次. 等价于{1,}? 匹配前面的子表达式零次或一次. 等价于{0,1} , 当该字符跟在任何一个其他限制符(*, +, ?, {n}, {n,}, {n,m}) 后面时,匹配模式是非贪婪的.非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串.例如,对于字符串 "

学习正则表达式笔记(二)

正则匹配的各种模式 1.择一匹配(|) 择一匹配用管道符号(|),也就是竖线表示.代表可以从多个模式中选择一个,可用于分割正则表达式.例如: ABC | abc 表示即可以匹配 ABC,又可以匹配 abc. 2.匹配任意单个字符 点号(.)可以匹配除换行符 \n 以外的任意字符,无论是空格,字母,数字,可打印字符.不可打印字符,还是一个符号,使用点号都能够匹配它们. 在Python中,如果使用模块属性re.S 也就是 re.DOTALL,那么换行符 \n 也可以匹配了. 3.从字符串起始或者结尾

python 正则表达式 笔记

{jpg,gif} jpg或者gif两个单词 [jpg|gif] 凡是由jpgif这几个字母组成的字符 [001-010] 数字001-010之间10个数字 $ curl -O http://cgi2.tky.3web.ne.jp/~{zzh,nick}/[001-201].JPG 这样产生的下载,就是 ~zzh/001.JPG ~zzh/002.JPG ... ~zzh/201.JPG ~nick/001.JPG ~nick/002.JPG ... ~nick/201.JPG 调用正则表达式中