01正则表达式
什么是:单个字符串来描述匹配以一列符合某个语法规则的字符串
实例:来对IP地址进行匹配 a标签
通过re模块提供对正则表达式的支持:
> pattern=re.compile('hello')
>> match=pattern.match('hello world')
>>> print (match.group())
hello
可以合并为word=re.findall(hello'','hello world!)
第一种运行速度快一下
一下字符:
1 . 匹配任意字符除了换行 '\n
2. \ 转义字符
3. [...] 字符集可给出范围,也可用 ^表示取反 换行
二 预定义字符集(可以写在[.....]中)
\d 数字 \D 非数字
\s 非空字符:[<space> \t \r \f \v] \S 非空白字符
\w 单词字符 [a-zA-Z0-9] \W 非单词字符
三 数量词 (用在字符或者(...)之后)
* 匹配前一个字符0++次
+ 匹配前一个字符1++
? 0/1
{m} m
{m,n} m到n次
四 逻辑 分组
| 代表左右表达式任意匹配一个,先左后右
(...) 分组
五 iLmsux (编译选项制定)
re.I 忽略大小写
re.L 使用预定义的字符\w W b B s S 取决于当前区域设定
re.M 多行模式改变 ^ $ 的行为
ew.S . 任意匹配模式
re.U 使用预定字符类 取决Unicode定义的字符属性
re.X 详细模式,可以多行,忽略空白字符,并可加入注释
六 贪婪模式/非贪婪模式
abbbc 贪婪 ab* abbb
非贪婪 ab*? a
02Web编程
03多线程编程
04网络编程
05数据库编程