正則表達式是一種強大的字符串匹配工具,可以從一段文本中提取感興趣的信息。在Python中,re模塊提供了對正則表達式的支持。本文將介紹如何使用正則表達式來提取文本信息。
一、正則表達式怎麼提取文本
正則表達式通過使用不同的元字符來描述文本中的模式。使用re模塊中提供的函數可以對文本進行搜索匹配,從而實現對感興趣信息的提取。
例如,如果想要提取文本中所有的數字,可以使用如下正則表達式:
import re text = "Hello, my phone number is 123-456-7890." pattern = r'\d+' result = re.findall(pattern, text) print(result)
上述代碼中,使用了re模塊的findall函數來匹配文本中所有符合正則表達式的模式,並返回匹配的結果。其中,模式「\d+」表示匹配一串數字。
化學元素周期表中的化學元素通常包含原子序數、元素符號、元素名稱和原子量等信息。如果你想要從元素周期表的網頁中提取這些信息,可以使用如下正則表達式來匹配:
import re import requests url = 'https://www.ptable.com' html = requests.get(url).text pattern = r'(\d+) \s+([A-Z][a-z]?) \s+\s+(.+)\s+ \s+(\d+\.\d+) ' result = re.findall(pattern, html) print(result)
上述代碼中,使用requests模塊獲取元素周期表網頁的HTML代碼,並使用正則表達式匹配出其中的元素信息。
二、爬蟲正則表達式怎麼提取文本
在爬蟲中,正則表達式也是一種十分實用的工具。通過使用正則表達式,我們可以方便地提取網頁中感興趣的信息,並進行進一步地處理。
下面以爬取知乎問題頁面為例,介紹如何使用正則表達式提取問題標題和答案內容。
import re
import requestsurl = 'https://www.zhihu.com/question/55378499'
html = requests.get(url).text
pattern = r'.*?(.*?)原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/152813.html