2011-10-21 58 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

相关问题