2012-05-01 25 views
1

最近,我發送了一封簡報到我擁有的舊電子郵件數據庫。幾年後,它創建,似乎大約30%的電子郵件是不活動的 - 我收到了數以千計的郵件傳遞失敗的郵件。從服務器電子郵件中收集特定數據(發送失敗報告)

所有這些失敗通知都以文本文件形式存儲在我的服務器上,它們是包含我發送給我的訂閱者的文本的回覆。 每封電子郵件在其文本中都有用戶的ID。此ID是由位普通文本,東西像之前

<a href="abc.com?id=123321"></a> 

和它的「123321」我想從我收到的每個故障報告中提取。

首先,我開始手動執行該操作,並逐個收集所有內容。在我的眼睛在地板上感受到500封電子郵件之後,我確信有一個使用php和一些功能的解決方案。 我正在考慮將所有這些文件放入一個大文件中,並尋找一種preg_match方式來做到這一點,或者嘗試使用正則表達式。

您將如何處理這樣的問題,我應該在哪裏尋找解決方案?

回答

1

這似乎適用於我的小數據示例。只要你不試圖一次加載所有的數據,它應該工作:

$data = file_get_contents("data.txt"); 
preg_match_all('#(?<=<a href="abc\.com\?id=)\d+(?="></a>)#',$data,$matches); 
print_r($matches); 
相關問題