sql >> Database >  >> RDS >> Sqlserver

SQL Server-lettertype wijzigen in html-tekenreeks

Dit lijkt te werken, hoewel ik het maar op één string heb geprobeerd (waarbij het lettertype op 2 plaatsen is ingesteld). Ik begon met code die ALLE html verwijdert en wijzigde om alleen naar 'font-size:*' te zoeken en deze te wijzigen. Ik vermoedde dat er problemen zouden zijn als de lettergrootte 9 of minder is (1 teken) en ik verander het in 10 (2 tekens), maar daar lijkt het ook voor te werken.

ALTER FUNCTION [dbo].[udf_ChangeFont]
(@HTMLText VARCHAR(MAX), @FontSize VARCHAR(2))
RETURNS VARCHAR(MAX)
AS
BEGIN
DECLARE @Start INT
DECLARE @End INT
DECLARE @Length INT
SET @Start = CHARINDEX('font-size:',@HTMLText)
SET @End = CHARINDEX(';',@HTMLText,CHARINDEX('font-size:',@HTMLText))
SET @Length = (@End - @Start) + 1

WHILE @Start > 0
AND @End > 0
AND @Length > 0
BEGIN
SET @HTMLText = STUFF(@HTMLText,@Start,@Length,'font-size:' + @FontSize + ';')
SET @Start = CHARINDEX('font-size:',@HTMLText, @End+2)
SET @End = CHARINDEX(';',@HTMLText,CHARINDEX('font-size:',@HTMLText, @End+2))
SET @Length = (@End - @Start) + 1
END
RETURN LTRIM(RTRIM(@HTMLText))
END


  1. Wanneer moet ik Oracle's Index Organised Table gebruiken? Of, wanneer niet?

  2. Een tafel vergrendelen met slaapstand

  3. Hoe vergelijk ik twee CLOB-waarden in Oracle?

  4. Hoe rijen in SQL Server-tabel in te voegen door de GUI van tabelrijen te bewerken - SQL Server / TSQL-zelfstudie, deel 101