2011-10-21 98 views
1

我需要從數據庫中取出所有鏈接,以便我可以創建URL重寫。使用SQL語句,我怎樣才能從表中提取鏈接?有時在一個單元格內有多個鏈接,這使得它更加複雜。任何想法如何實現這一目標?使用SQL從數據庫表中提取所有鏈接?

編輯 一個例子是:SELECT myval FROM htmlcontrols。 「myval」有一個HTML字符串,如「<div>Hi this is a test. <a href="somewhere.htm">Click here</a> or <a href="http://somewhereelse.com/testarea">here</a></div>」。我想摘錄如下:

LINKS 
----- 
somewhere.htm 
http://somewhereelse.com/testarea 
+3

你需要顯示查詢的一個例子,到目前爲止,您的數據可能是什麼樣子。有很多(壞)方法來存儲多值屬性。 – Yuck

+0

從問題中,我會說有HTML文本字段在其中。 OP需要從這些html字符串中去除每個鏈接。 – MatBailie

+0

@Dems正確,但分隔符對於一件事很重要。正如你所說,它只是帶有鏈接的文本?或者可能有1+個鏈接由'|分隔的字段; \ t \ r \ n' ...? – Yuck

回答

0

你可能最好不管是在客戶端處理此,通過域迭代和解析HTML來然後再重新插入它們就什麼表/你需要列;或者至少,可以有效地進行解析的creating a UDF

注意,我在上面發佈的鏈接是一個UDF正則表達式函數的實現,但我不是一定提示你應該使用一個正則表達式解析HTML,因爲這是almost總是a bad idea

如果使用CLR函數去,看看HTMLAgilityPack

相關問題