python_spider

python使用正则表达式

2017-06-11  本文已影响1人  宁静消失何如
正则表达式

目标:
了解 :
(0)\w 匹配 一个字母或者数字
(1)\d 只匹配数字
(2)\s 至少匹配一个空格 同理"\_","\-"分别匹配 下划线 _ 和连字符 -
例如:\w\w\w\d 可以匹配出 qde2 dog2 2g532 等
(3). 可以匹配任意字符
例如 python. 可以匹配为: python3 python2 等
(4)匹配字符的个数:

 ```*```  匹配 任意个字符(可以为0)
 ```+```  表示至少一个字符 
 ```?```  表示1或者0个字符  
 ```{n}```  表示 n个
 ```{n-m}```  表述 n-m个
 例如:```\d{2}\d{1-3}\s+\w*``` 可以匹配:32345 f3

(5)如何精确用到[]
例如:[a-dA-D\-\_] 可以输出 a,b,c,A,C,D,,-中的一个字符
[a-dA-D\-\_]+可以输出 a,b,c,A,C,D,
,-中的多个字符 例如:aaBD-\
(6) a|b 表示匹配a或者b 例如 P|python 表示 Python或者python
(7) ^ 表示行的开始 $ 表示行的结束
例如:py 可以匹配到"python" 如果改成^py$ 只能匹配到"py"

正则表达式=模式匹配
1.特殊字符

特殊字符

regtest正则表达式
index索引
例子 匹配电话号


电话号
补充一些用法
# .任何字符 *任意次数
# $结尾字符a
# ?非贪婪匹配 表示1或者0个字符
# 贪婪匹配 从右边匹配 非贪婪是从左边
# +至少出现一次
# . 和任意字符就没有特殊含义
# \s 表示空格 /S除了空格都可以
# \w字符包括(A-Za-z0-9_)出现任何都可以 \W相反
# \u4E00-\u9FA5 匹配汉字
# \d数字
# | 匹配两边都可以
上一篇下一篇

猜你喜欢

热点阅读