2012-11-04 180 views
0

我需要從數據庫中提取所有鏈接(URL)。要麼使用SQL語句或Python,我怎樣才能從表中提取鏈接?從數據庫中提取鏈接(URL) -

有時沒有聯繫,有時1和某個大於1

舉個例子:

數據庫名稱(數據庫) 表: ID(INT) COL1(已包括文網址) COL2(具有文本包括網址) COL3(具有文本包括網址) COL4(具有文本包括網址)

COL1,COL2,COL3和COL4包含文字和網址。 (如果電子郵件包含URL)

我想創建一個新的coloum名稱(例如名稱(URL_found),以便在col1,col2,col3和col4中找到所有URL。

例如

在COL1

有 你好,你好,這是一個測試http://www.example.com/somewhereelse/some/where如果你買這個,我將讓你免費的一種形式

如何做到這一點任何想法?

謝謝 -

回答

0

這是一個廣泛的問題,所以這裏是一個廣泛的建議。您可能需要使用python客戶端遍歷表中的記錄,並使用正則表達式或其他一些python解析庫來解析每個列中的字符串以獲取有效的url。

一旦你找到了一個列或匹配的記錄,你可以他們設置爲另一列URL_found以某種URL之間的分隔符...但它似乎是更有益的創建像URL_found一個新的數據庫表與原始表中的記錄具有外鍵關係。

+0

感謝您的快速回答。更具體地說,我有一個表(數據庫)包括3列,每列都有一個電子郵件,該電子郵件是文本格式,但也可能有文本的URL,我想要的是從3列中提取網址並將它們(URL)保存在一個新的列名稱URL_found中。什麼是適當的SQL命令來做到這一點,或Python腳本來做到這一點?我希望我現在更清楚。謝謝。 – user1797560

+0

它並沒有真正使問題更具體。這幾乎是你已經問過的。我建議你做客戶端。我不確定數據庫是否適合嘗試從文本字段進行正則表達式提取。所以我建議用python客戶端遍歷記錄並在它們上執行正則表達式匹配。如果你有「這是我試過的」問題,那麼我可以更具體地評論什麼不適用於你的方法。現在......它只是一個方向上的一些指導,讓你嘗試一些東西。 – jdi