python正規表示式的小練習

2021-08-11 05:15:35 字數 809 閱讀 9450

#乙個python正規表示式的練習

#抓取糗事百科乙個頁面,輸出標題和內容

import urllib.request

import re

url = ""

header =

#用request包裝url和header

req = urllib.request.request(url, headers = header);

#再將打包好的requst傳給urlopen,對某些**可用urlopen(url),如果拒絕連線,

# 可用urlopen(request)

with urllib.request.urlopen(req) as f:

#轉換成位元組陣列

content = f.read().decode("utf-8")

# .*? 匹配任意字元 (.*?)匹配結果返回乙個list ,pattern中第乙個(.*?)對應

# item[0],第二個(.*?)對應item[1]

pattern = re.compile('.*?.*?="content".*?(.*?).*?="stats"', re.s)

#items是乙個list

items = re.findall(pattern,content)

i = 1

for item in items:

print("第", i, "個段子")

print(item[0], item[1])

i = i+1

print("----------------")

正規表示式小練習

1 匹配整數或者小數 包括正數和負數 d d 表示 匹配0次或一次,d表示整數,表示匹配一次或多次,d 表示小數 2 匹配年月日日期 格式2018 12 6 1 d 1 0 2 0?1 9 3 01 12 d 0?1 9 1.1 9 表示年是以數字1 9開頭的,d表示年的位數,1 9 d就表示1 9...

Python正規表示式練習

表示匹配任意字元,除了換行符,當re.dotall標記被指定時,則可以匹配包括換行符的任意字元。import re a xy123 b re.findall x.a c re.findall x.a print b print c 輸出結果 xy12 xy1 的使用舉例 匹配前乙個字元0次或無限次 ...

爬蟲 正規表示式的小練習

1 34578 中的乙個 9位數字 text 13555310477 ret re.match 1 34578 d text print ret.group 數字,字母或者下劃線 至少一位的數字或字母 至少以為的字母 text 1367393 qq.com ret re.match w 0 9a z...