Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
 Pripojte sa k databáze , a vytvoriť nový SQL súbor 
 2 
 Zadajte nasledujúci SQL : .. 
 
 CREATE FUNCTION [ DBO ] [ CleanHTML ] 
 
 ( 
 
 @ DirtyText varchar ( mAX ) 
 
 ) 
 
 VRACIA varchar ( max) 
 
 
 
 BEGIN 
 
 DECLARE @ BeginPos int 
 
 DECLARE @ endpos int 
 
 DECLARE @ Ľan int 
 
 - Vymeňte subjekt HTML & s " a " charakter ( to je potrebné urobiť ako prvé , ako 
 
 - ' & ' môže byť dvojaký kódované ako " & " ) 
 
 SET @ BeginPos = CHARINDEX ( ' a ' , @ DirtyText ) 
 
 SET @ endpos = @ BeginPos + 4 
 
 SET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
WHILE ( @ BeginPos > 0 AND @ endpos > 0 AND @ Ľan > 0 ) BEGIN klipart
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , ' a ' ) 
 
 SET @ BeginPos = CHARINDEX ( ' a ' , @ DirtyText ) 
 
 SET @ endpos = @ BeginPos + 4 
 
 SET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 END 
 
 - Vymeňte HTML entity < s ' < ' znak 
 
 SET @ BeginPos = CHARINDEX ( ' < ' , @ DirtyText ) 
 
 SET @ endpos = @ BeginPos + 3 
 
 SET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 AND @ endpos > 0 AND @ Ľan > 0 ) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , " < ; " ) 
 
 sET @ BeginPos = CHARINDEX ( ' < ' , @ DirtyText ) 
 
 set @ endpos = @ BeginPos + 3 
 
 sET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 END 
 
 - Vymeňte subjekt HTML > s ' > ' charakteru 
 
 SET @ BeginPos = CHARINDEX ( ' > ' , @ DirtyText ) 
 
 set @ endpos = @ BeginPos + 3 
 
 sET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 A @ endpos > 0 AND @ Ľan > 0 ) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , ' > ' ) 
 
 SET @ BeginPos = CHARINDEX ( ' > ' , @ DirtyText ) 
 
 set @ endpos = @ BeginPos + 3 
 
 sET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 END 
 
 - Vymeňte HTML entity & s ' a ' znakovej 
 
 SET @ BeginPos = CHARINDEX ( ' a ' , @ DirtyText ) 
 
 SET @ endpos = @ BeginPos + 4 
 
 SET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 A @ endpos > 0 AND @ Ľan > 0 ) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , ' a ' ) 
 
 SET @ BeginPos = CHARINDEX ( ' a ' , @ DirtyText ) 
 
 SET @ endpos = @ BeginPos + 4 
 
 SET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 END 
 
 - Vymeňte HTML entity s " " znak 
 
 sET @ BeginPos = CHARINDEX ( '' , @ DirtyText ) 
 
 set @ endpos = @ BeginPos + 5 
 
 sET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 AND @ endpos > 0 AND @ Ľan > 0 ) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , " ' ) 
 
 SET @ BeginPos = CHARINDEX ( ' ' , @ DirtyText ) 
 
 SET @ endpos = @ BeginPos + 5 
 
 SET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 END 
 
 - Vymeňte všetky tagy sa znakom nového riadku 
 
 SET @ BeginPos = CHARINDEX ( '' , @ DirtyText ) 
 
 SET @ endpos = @ BeginPos + 3 
 
 SET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 while ( @ BeginPos > 0 AND @ endpos > 0 AND @ Ľan > 0 ) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , CHAR ( 13 ) + CHAR ( 10 ) ) 
 
 SET @ BeginPos = CHARINDEX ( '' , @ DirtyText ) 
 
 set @ endpos = @ BeginPos + 3 
 
 sET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 END 
 
 - vymeňte 
 tagy s nového riadku 
 
 SET @ BeginPos = CHARINDEX ( ' 
 ' , @ DirtyText ) 
 
 SET @ endpos = @ BeginPos + 4 
 
 SET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 A @ endpos > 0 AND @ Ľan > 0 ) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , " CHAR ( 13 ) + CHAR ( 10 ) ' ) 
 
 SET @ BeginPos = CHARINDEX ( ' br ' , @ DirtyText ) 
 
 set @ endpos = @ BeginPos + 4 
 
 sET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 END 
 
 - vymeňte 
 vyhľadávacie nový riadok 
 
 SET @ BeginPos = CHARINDEX ( ' 
 ' , @ DirtyText ) 
 
 SET @ endpos = @ BeginPos + 5 
 
 SET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 A @ endpos > 0 AND @ Ľan > 0 ) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , " CHAR ( 13 ) + CHAR ( 10 ) ' ) 
 
 SET @ BeginPos = CHARINDEX ( ' 
 ' , @ DirtyText ) 
 
 set @ endpos = @ BeginPos + 5 
 
 sET @ Ľan = ( @ endpos - @ BeginPos ) + 1 
 
 END 
 
 - odstráňte všetko medzi   SET @ BeginPos = CHARINDEX ( ' < ' , @ DirtyText )   SET @ endpos = CHARINDEX ( ' > ' , @ DirtyText , CHARINDEX ( ' < ' , @ DirtyText ) )   SET @ Ľan = ( @ endpos - @ BeginPos ) + 1   while ( @ BeginPos > 0 AND @ endpos > 0 AND @ Ľan > ; 0 ) BEGIN   SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , '' )   SET @ BeginPos = CHARINDEX ( ' < ' , @ DirtyText )   SET @ endpos = CHARINDEX ( ' > ' , @ DirtyText , CHARINDEX ( ' < ' , @ DirtyText ) )   SET @ Ľan = ( @ endpos - @ BeginPos ) + 1   END   RETURN LTrim ( RTrim ( @ DirtyText ) )   END   Kompilácia funkciu SQL .   spustite funkciu , a overte , že vracia požadované výsledky . Napríklad :   Vyberte si z dbo.CleanHTML ( "  
 
 
 
 
 
 
 
 
 
 
 
 3 
 
 4