CREATE FUNCTION StripHTMLTags( @HTMLText VARCHAR(MAX) ) RETURNS VARCHAR(MAX) AS --========================================================= -- Author : Steven McDonald -- Date : 17 February 2011 -- Description : Removes all HTML tags from provided Text -- Link : Original version - http://blog.sqlauthority.com/2007/06/16/sql-server-udf-user-defined-function-to-strip-html-parse-html-no-regular-expression/ --========================================================= BEGIN DECLARE @Start INT DECLARE @End INT DECLARE @Length INT --Gets the start and end indexes of the HTML tag 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 --Strip HTML tag out of Text SET @HTMLText = STUFF(@HTMLText, @Start, @Length, '') SET @Start = CHARINDEX('<', @HTMLText) SET @End = CHARINDEX('>', @HTMLText, CHARINDEX('<', @HTMLText)) --If an open tag is found and no close tag is found; --assume the rest of the string is HTML and remove it IF(@Start > 0 AND @End = 0) BEGIN SET @End = LEN(@HTMLText) END SET @Length = (@End - @Start) + 1 END RETURN LTRIM(RTRIM(@HTMLText)) END GO