我有一个带有 html 内容列的表格我需要的是从中选择所有当前的 href 内容,例如
select 'href="MyFirstPAge.aspx" <table><tr><td> href="http://www.test.com/2009/05/aa-bb.html" </td></tr></table> href="MySecondPage.aspx"' as content
我需要结果
- 我的第一页.aspx
- http://www.test.com/2009/05/aa-bb.html
- href="MySecondPage.aspx"
知道我该怎么做吗?
我需要所有行中的不同列表。
试过一个功能
create function dbo.GetLinks (@t nvarchar(max))
returns @Links table (link nvarchar(max))
as
begin
declare @strtpos int
SET @strtpos = PATINDEX('%href="http%.aspx"%', @t)
declare @endpos int
SET @endpos = 0
declare @lnk nvarchar(max)
while @strtpos > 0
begin
select @endpos = PATINDEX('%.aspx"%', @t)+ 5
, @lnk = substring(@t ,@strtpos, @endpos - @strtpos +1) -- here is the error
, @t= RIGHT (@t, len(@t) - @endpos)
, @strtpos = PATINDEX('%href="http%.aspx"%', @t)
insert @Links values(@lnk )
end
return
end
go
但是收到错误消息 536,级别 16,状态 5,行 1 传递给 SUBSTRING 函数的长度参数无效。
样本数据是
<a shape="rect" href="http://www.qwewqe.fda.gov/wqewqe/pdf8/wewe.pdf"
target="_blank">系统市场。
2010 年,一直在呼吁处理,target="_blank"> changes. </p><p style="text-align: justify">The <a shape="rect" href="fghfghfgh.aspx" target="_blank"> substantially equivalent.</a> </p><p style="text-align: justify">Per th </p><p style="text-align: justify">market. </p> <p style="text-align: justify">The <a shape="rect" href="asdd.aspx" target="_blank">sub.</a> </p><p style="text-align:
证明">也许
八分之一的修订版 评论家 5我们如果 sdfsdfasd 萨斯达斯达