Привет. У меня есть данные как (СКАРФ.) / (ОБРАТЫ), и я хочу показать их как СКАРФ-ОБРАТЫ, но я не могу их получить
Мой код ниже -
DECLARE @str VARCHAR(400)
DECLARE @specialchars VARCHAR(50) = '%[/,~,@,#,$,%,&,*,(,),.,!^?:]%'
--SET @str = 'KRA!NTHI@#KUMAR, KU%^?MAR GO~()$U.BigGrin'
SET @str = '(SCARF.) / (WRAPS)'
SET @str = REPLACE(@str,'.','')
WHILE PATINDEX( @specialchars, @str ) > 0
SET @str = REPLACE(REPLACE( @str, SUBSTRING( @str, PATINDEX( @specialchars, @str ), 1 ),'-'),'-','-')
IF(LEFT(@str, 1) = '-')
set @str = RIGHT(@str, LEN(@str) - 1)
IF(RIGHT(@str, 1) = '-')
set @str = LEFT(@str, LEN(@str) - 1)
SELECT REPLACE(@str,' ','-')
но он дает данные в виде SCARF ----- WRAPS вместо SCARF-WRAPS
У меня такой тип данных, как несколько, и я хочу преобразовать их как с одной чертой.
Например:
«УХОД ЗА КОЖЕЙ И КРАСОТА» должен измениться на «УХОД ЗА КОЖЕЙ-КРАСОТАЮ»
«BANDANAS / DURAGS / WRAPS» должен изменитьсяна «BANDANAS-DURAGS-WRAPS»
«Шляпы и глушители» должны измениться на «Шляпы-глушители»