Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Замена текста с помощью similar / 6 сообщений из 6, страница 1 из 1
20.07.2015, 11:57
    #39011154
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена текста с помощью similar
Приветствую.
В таблице есть текстовое поле Varchar(4000), в котором хранятся тексты объявлений.
Задача: удалить из текстов номера телефонов

Выборку сделать не сложно:
Код: sql
1.
select text_obyavl from APART where text_obyavl similar to '% 375[[:DIGIT:]]+%'



Было бы здорово поиметь функцию replace, которая бы удаляла по условия с учетом регулярного выражения.

телефоны все в таком формате: 375295455801 или 80295455801, 80335455801

Да, на Дельфи это можно было бы сделать быстрее, но хотелось бы с помощью штатных средств Firebird и execute block.
...
Рейтинг: 0 / 0
20.07.2015, 12:22
    #39011193
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена текста с помощью similar
X11,

в тройке есть substring который может работать с регулярными выражениями

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
with t as (
  select 'тел 375295455801' as txt from rdb$database
  union all
  select 'телефон 80295455801' as txt from rdb$database
  union all
  select 'тел 80335455801' as txt from rdb$database
  union all
  select 'телефон 375295455801' as txt from rdb$database
)
select
  txt,
  substring(txt similar '%#"375[[:DIGIT:]]+#"%' escape '#')
from t
...
Рейтинг: 0 / 0
20.07.2015, 12:34
    #39011211
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена текста с помощью similar
Симонов Денисsubstring который может работать с регулярными выражениями

о, а я и не знал
спасибо!!!
...
Рейтинг: 0 / 0
20.07.2015, 13:03
    #39011261
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена текста с помощью similar
Firebird 2.5.4

Token unknown - line 12, column 17.
similar.
...
Рейтинг: 0 / 0
20.07.2015, 13:06
    #39011265
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена текста с помощью similar
X11Firebird 2.5.4Симонов Денисв тройке есть substring"Чукча пейсатель"?
...
Рейтинг: 0 / 0
20.07.2015, 13:11
    #39011274
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена текста с помощью similar
X11,

в 2.5 никак. Пиши UDF либо на клиенте. Никакой ХП это эффективно не сделать
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Замена текста с помощью similar / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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