Я хотел найти шаблон в строке и заменить этот шаблон другим
Уважаемый господин,
я хотел найти определенный шаблон в строке и заменить его другим шаблоном
например:
строка='a,b,c: d, e, f :'
findpattern :
replacepattern: ,:
выход будет a,b,c,: d, e, f ,:
Что я уже пробовал:
Alter FUNCTION dbo.RecursiveReplace_fn1 ( @P_String VARCHAR(MAX), @P_Pattern VARCHAR(MAX), @P_ReplaceString VARCHAR(MAX), @P_ReplaceLength INT = 1 ) RETURNS VARCHAR(MAX) BEGIN DECLARE @Index INT; -- Get starting point of pattern SET @Index = PATINDEX(@P_Pattern, @P_String); IF @Index > 0 BEGIN -- Perform the replace SET @P_String = STUFF(@P_String, PATINDEX(@P_Pattern, @P_String), @P_ReplaceLength, @P_ReplaceString); -- Recurse SET @P_String = dbo.RecursiveReplace_fn1(@P_String, @P_Pattern, @P_ReplaceString, @P_ReplaceLength); END; RETURN @P_String; END;
0x01AA
И вам действительно нравится делать это рекурсивно?
Еще одна вещь: подумайте о том, что ваш шаблон замены содержит шаблон поиска.
Patrice T
У вас есть вопрос ?