powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как вырезать символы из строки?
15 сообщений из 15, страница 1 из 1
Как вырезать символы из строки?
    #39634614
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть строка, в которой могут встречаться последовательности символов в разных комбинациях CR, LF, TAB, пробел.
Как вырезать такие символы из строки?

Пример:
" Это мой тчёт блин ''Щ''"

В бинарном виде:
0x200020002000200020002000200020002000200020002000200020000D000A00090009000900200020000D000A00090009000900200020000D000A00200020000D000A002D0442043E0420003C043E04390420004204470451044204200031043B0438043D04200027002700290427002700
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634626
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,

порезать строку на результирующие строки подзапроса,
во внешнем запросе собрать в исходном порядке (FOR XML PATH('')), но без ненужных символов.
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634650
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iapРолг Хупин,

порезать строку на результирующие строки подзапроса,
во внешнем запросе собрать в исходном порядке (FOR XML PATH('')), но без ненужных символов.

а как-то "одним махом" реплейснуть?
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634651
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно написать CLR функцию для RegexpReplace. Вполне быстро работает. Или тот же компот использовать в SSIS пакете, если надо выгрузить в файл.
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634652
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг ХупинЕсть строка, в которой могут встречаться последовательности символов в разных комбинациях CR, LF, TAB, пробел.
Как вырезать такие символы из строки?Четыре вложенных replace
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634654
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У replace есть ограничение - не вырезает 0x00 (by design это ограничитель сроки), я с таким сталкивался.
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634655
AlanDenton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Просто мысли в слух

Код: sql
1.
2.
3.
4.
5.
6.
DECLARE @t VARCHAR(10) = 'abcdef'

SELECT @t = REPLACE(@t, token, '')
FROM (VALUES ('a'), ('c'), ('e')) t(token)

SELECT @t
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634661
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав КолосовМожно написать CLR функцию для RegexpReplace. Вполне быстро работает. Или тот же компот использовать в SSIS пакете, если надо выгрузить в файл.

CLR не проходит, Майкрософты запретили его в Азуре с какого-то времени, вообще.
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634785
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634865
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг ХупинЕсть строка, в которой могут встречаться последовательности символов в разных комбинациях CR, LF, TAB, пробел.
Как вырезать такие символы из строки?

Пример:
" Это мой тчёт блин ''Щ''"

В бинарном виде:
0x200020002000200020002000200020002000200020002000200020000D000A00090009000900200020000D000A00090009000900200020000D000A00200020000D000A002D0442043E0420003C043E04390420004204470451044204200031043B0438043D04200027002700290427002700

Так можно убрать непечатные:

Код: sql
1.
select @txt=replace(replace(replace(replace(@txt,char(20),''),char(09),''),char(13),''),char(10),'');



но как быть с этими парами
2000 ?
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634873
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупинно как быть с этими парами
2000 ?

Выучить, наконец, шо такэ UNICODE - не пробовал?

Код: sql
1.
select cast( N' ' as binary(2))
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634903
Eleanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,

Вы хотели заменить все перечисленные символы на пробел, а потом заменить множественные пробелы одним?
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634942
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleks222Ролг Хупинно как быть с этими парами
2000 ?

Выучить, наконец, шо такэ UNICODE - не пробовал?

Код: sql
1.
select cast( N' ' as binary(2))



шо такэ не пробовал
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634944
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EleanorРолг Хупин,

Вы хотели заменить все перечисленные символы на пробел, а потом заменить множественные пробелы одним?

и так, и там и по задаче могут быть серии пробелов, которые не нужны, достаточно одного
...
Рейтинг: 0 / 0
Как вырезать символы из строки?
    #39634956
Eleanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,

Т.е. подойдет типовое решение ?
Код: sql
1.
2.
3.
4.
5.
6.
SELECT REPLACE(REPLACE(REPLACE(LTRIM(RTRIM(
REPLACE(REPLACE(REPLACE(REPLACE(@txt,char(20),' '),char(09),' '),char(13),' '),char(10),' ')
))
,'  ',' ' + char(7))
,char(7) + ' ','')
,char(7),'')
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как вырезать символы из строки?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]