第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從sql server中的字符串中刪除html標(biāo)簽的最佳方法?

從sql server中的字符串中刪除html標(biāo)簽的最佳方法?

MMMHUHU 2019-07-31 18:34:56
從sql server中的字符串中刪除html標(biāo)簽的最佳方法?我在SQL Server 2005中有包含html標(biāo)簽的數(shù)據(jù),我想將所有內(nèi)容刪除,只留下標(biāo)簽之間的文本。理想的情況下也更換喜歡的東西&lt;帶<等有沒有一種簡單的方法可以做到這一點,或者有人已經(jīng)有一些示例t-sql代碼?我沒有能力添加擴(kuò)展存儲過程等,所以更喜歡純t-sql方法(最好是一個向后兼容sql 2000)。我只想用剝離的html檢索數(shù)據(jù),而不是更新它,所以理想情況下它會被寫成用戶定義的函數(shù),以便于重用。所以例如轉(zhuǎn)換這個:<B>Some useful text</B>&nbsp;<A onclick="return openInfo(this)"    href="http://there.com/3ce984e88d0531bac5349"    target=globalhelp>    <IMG title="Source Description" height=15 alt="Source Description"          src="/ri/new_info.gif" width=15 align=top border=0></A>&gt;&nbsp;<b>more text</b></TD></TR>對此:Some useful text > more text
查看完整描述

3 回答

?
qq_花開花謝_0

TA貢獻(xiàn)1835條經(jīng)驗 獲得超7個贊

有一個UDF將執(zhí)行此處描述的操作:

剝離HTML的用戶定義函數(shù)

CREATE FUNCTION [dbo].[udf_StripHTML] (@HTMLText VARCHAR(MAX))RETURNS VARCHAR(MAX) ASBEGIN
    DECLARE @Start INT    DECLARE @End INT    DECLARE @Length INT    SET @Start = CHARINDEX('<',@HTMLText)
    SET @End = CHARINDEX('>',@HTMLText,CHARINDEX('<',@HTMLText))
    SET @Length = (@End - @Start) + 1
    WHILE @Start > 0 AND @End > 0 AND @Length > 0
    BEGIN
        SET @HTMLText = STUFF(@HTMLText,@Start,@Length,'')
        SET @Start = CHARINDEX('<',@HTMLText)
        SET @End = CHARINDEX('>',@HTMLText,CHARINDEX('<',@HTMLText))
        SET @Length = (@End - @Start) + 1
    END
    RETURN LTRIM(RTRIM(@HTMLText))ENDGO

編輯:請注意這是針對SQL Server 2005的,但是如果將關(guān)鍵字MAX更改為類似4000,它也可以在SQL Server 2000中使用。


查看完整回答
反對 回復(fù) 2019-07-31
?
PIPIONE

TA貢獻(xiàn)1829條經(jīng)驗 獲得超9個贊

如果您的HTML格式正確,我認(rèn)為這是一個更好的解決方案:

create function dbo.StripHTML( @text varchar(max) ) returns varchar(max) asbegin
    declare @textXML xml
    declare @result varchar(max)
    set @textXML = REPLACE( @text, '&', '' );
    with doc(contents) as
    (
        select chunks.chunk.query('.') from @textXML.nodes('/') as chunks(chunk)
    )
    select @result = contents.value('.', 'varchar(max)') from doc    return @resultendgoselect dbo.StripHTML('This <i>is</i> an <b>html</b> test')


查看完整回答
反對 回復(fù) 2019-07-31
  • 3 回答
  • 0 關(guān)注
  • 1143 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號