python3网络爬虫:正则表达式1(四)
【摘要】
python3网络爬虫:正则表达式1(四)
'''正则表达式'''import re #导入正则表达式类 #search方法匹配字符有两个参数,第一个参数是匹配规则(第一个参数左边的r表示原始字符,如果有反斜杠,代表格式化这些反斜杠输出原始字符),# 第二个参数是被匹配的数据。r = re.search...
python3网络爬虫:正则表达式1(四)
-
'''
-
正则表达式
-
'''
-
import re #导入正则表达式类
-
-
#search方法匹配字符有两个参数,第一个参数是匹配规则(第一个参数左边的r表示原始字符,如果有反斜杠,代表格式化这些反斜杠输出原始字符),
-
# 第二个参数是被匹配的数据。
-
r = re.search(r'I love you','I love you')
-
print(r) #结果匹配到 match='I love you'>
-
-
#(1)匹配除换行符以外的所以字符
-
r = re.search('I lov.','I love you') #点: 匹配除换行符以外的所以字符
-
print(r) #match='I love'>
-
-
#(2)需要匹配点
-
r = re.search(r'\.','I love you .') #如果需要匹配点,则使用格式化\. 输出原始字符点
-
print(r) # match='.'>
-
-
#(3)匹配第一个出现的数字 \d
-
r = re.search(r'\d','I love 123')
-
print(r) #match='1'>
-
-
#(4)匹配多个数字:每一个\d代表一个数字
-
r = re.search(r'\d\d\d','I love you 123')
-
print(r) #match='123'>
-
-
#(5)匹配给定范围任意的字符
-
r = re.search(r'[a-z]','you love you')
-
print(r) # match='y'>
-
-
#(6)匹配给定范围的任意数字
-
r = re.search(r'[1-5]','987654321') #匹配出现第一个符合1到5的任意一个数字
-
print(r) #match='5'>
-
-
#(7)匹配次数用{}表示
-
r = re.search(r'[1-5]{3}','987654321')
-
print(r) #match='543'>
-
-
#(8)匹配一个范围内的次数{2,5}
-
r = re.search(r'[1-5]{3,5}','987654321') #匹配1-5的数字,最少匹配3次,最多匹配5次
-
print(r) #match='54321'>
-
-
#(9)匹配一个百位数字,因匹配符自身是不认识百十千万的数字,只是把它们当成一串数字。
-
# 所以匹配百位数字的时候,需要对每一位数字都给出一个匹配范围,逐个位数进行匹配。
-
-
'''
-
例如匹配0-255的数字
-
[01]\d\d|2[0-4]\d|25[0-5]'表达式解释。
-
[01]\d\d 表示百位为0到1的时候,十位和个位任何数字都可以。
-
2[0-4]\d 表示百位为2的时候十位只能是0到4的任意数字,个位任意数
-
25[0-5] 表示百位和十位为25时候,个位只能是0到5的任意数字
-
'''
-
r = re.search(r'[01]\d\d|2[0-4]\d|25[0-5]','100')
-
print(r) #match='200'
-
-
#(10)匹配一个IP
-
r = re.search(r'(([01]{0,1}\d{0,1}\d|2[0-4]\d|25[0-5])\.){3}([01]{0,1}\d{0,1}\d|2[]0-4\d|25[0-5])','192.168.1.1')
-
print(r)
文章来源: brucelong.blog.csdn.net,作者:Bruce小鬼,版权归原作者所有,如需转载,请联系作者。
原文链接:brucelong.blog.csdn.net/article/details/80493555
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)