Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Несложный вопрос по регуляркам  [new]
ultrasonic7
Member

Откуда:
Сообщений: 127
Всем привет! В запросе есть условие найти название таблицы с префиксом схемы или без него.
Как составить шаблон для параметра <выражение>, чтобы оно начиналось либо с точки, либо с пробела?

WHERE REGEXP_LIKE (<целевая_строка>, <выражение>)

<выражение> = [точка|пробел]слово
1 ноя 19, 14:58    [22008173]     Ответить | Цитировать Сообщить модератору
 Re: Несложный вопрос по регуляркам  [new]
123йй
Member

Откуда:
Сообщений: 1563
dbms_output.put_line('Всем привет.В запросе есть условие'); 
ultrasonic7,
1 ноя 19, 15:18    [22008188]     Ответить | Цитировать Сообщить модератору
 Re: Несложный вопрос по регуляркам  [new]
Elic
Member

Откуда: 1984. Выбраковка финно-угром продолжается. КЯЗ
Сообщений: 29402
RTFM Operators in Oracle SQL Regular Expressions (FAQ)
1 ноя 19, 15:19    [22008191]     Ответить | Цитировать Сообщить модератору
 Re: Несложный вопрос по регуляркам  [new]
ultrasonic7
Member

Откуда:
Сообщений: 127
123йй
dbms_output.put_line('Всем привет.В запросе есть условие'); 
ultrasonic7,

Тебе, видимо, по делу сказать нечего.

Elic
RTFM Operators in Oracle SQL Regular Expressions (FAQ)


Мне, к сожалению, сейчас некогда изучать весь мануал. Нужно по быстрому найти названия таблиц. Будет хорошо, если вы поможете составить шаблон, если знаете, как это делать.
1 ноя 19, 15:30    [22008207]     Ответить | Цитировать Сообщить модератору
 Re: Несложный вопрос по регуляркам  [new]
-2-
Member

Откуда:
Сообщений: 14994
ultrasonic7
найти название таблицы с префиксом схемы или без него
Выполни под пользователем, у которого нет прав на таблицы, узнаешь позицию. Для с именем схемы достаточно сменить текущую схему на анонимуса.
ultrasonic7
Будет хорошо
Не понятно, то ли это угроза, то ли обещание в награду чего-то неприличного.
1 ноя 19, 15:35    [22008214]     Ответить | Цитировать Сообщить модератору
 Re: Несложный вопрос по регуляркам  [new]
Dshedoo
Member

Откуда:
Сообщений: 375
ultrasonic7
Мне, к сожалению, сейчас некогда изучать весь мануал. Нужно по быстрому найти названия таблиц. Будет хорошо, если вы поможете составить шаблон, если знаете, как это делать.


А давайте наоборот. Мы найдём названия таблиц, а вы пока почитайте мануал.

З.Ы. "символ_обозначающий_начало_строки"
+"символ_обозначающий_начало_группы"
+"символ_обозначающий_что_следующий_символ_надо_экранировать"
+"символ_обозначающий_первый_искомый_символ"
+"символ_обозначающий_логическое_ИЛИ"
+"символ_обозначающий_что_следующий_символ_надо_экранировать"
+"символ_обозначающий_второй_искомый_символ"
+"символ_обозначающий_конец_группы"
1 ноя 19, 15:40    [22008222]     Ответить | Цитировать Сообщить модератору
 Re: Несложный вопрос по регуляркам  [new]
Elic
Member

Откуда: 1984. Выбраковка финно-угром продолжается. КЯЗ
Сообщений: 29402
ultrasonic7
Мне, к сожалению, сейчас некогда изучать весь мануал.
Ааааа.... Так это оказывается мы у тебя отнимаем время... Вот же ж мы козлы, не правда ли?
1 ноя 19, 15:42    [22008223]     Ответить | Цитировать Сообщить модератору
 Re: Несложный вопрос по регуляркам  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 5963
ultrasonic7
есть условие найти название таблицы с префиксом схемы или без него.


Найти где? Я вот у себя уже нашёл парочку и даже практически без выражений.

Попробуй сформулировать задачу адекватнее и показать,что ты уже пытался сделать сам.
1 ноя 19, 16:09    [22008252]     Ответить | Цитировать Сообщить модератору
 Re: Несложный вопрос по регуляркам  [new]
ultrasonic7
Member

Откуда:
Сообщений: 127
Меньше всего хотелось обидеть уважаемых участников форума, многие из которых советуют довольно дельные вещи (без шуток).
Дело было в том, что была пятница, предпраздничный день.
И нужно было по-быстрому найти имена нужных таблиц. Регулярные выражения - штука дельная, но требуются мне они не часто и за полчаса их не выучить.
Пока я нашёл выход из положения без применения регулярок. Наличие пробела или точки перед названием таблицы проверяется обычным OR. Если вдруг понадобится проверить на наличие еще одного символа перед названием таблицы (хотя вряд ли такое потребуется), то достаточно добавить еще одно условие через OR.

      IF (INSTR(packet_content_rec.TEXT, ' '||tabname_rec.TABLE_NAME||' ') > 0 OR 
          INSTR(packet_content_rec.TEXT, '.'||tabname_rec.TABLE_NAME||' ') > 0) 
        THEN DBMS_OUTPUT.PUT_LINE ('В пакете '||packet_content_rec.OWNER||'.'||packet_content_rec.OBJECT_NAME||
          ' встречается таблица '||tabname_rec.TABLE_NAME);
5 ноя 19, 12:48    [22009874]     Ответить | Цитировать Сообщить модератору
 Re: Несложный вопрос по регуляркам  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 17717
ultrasonic7
по-быстрому найти имена нужных таблиц.

Злоупотребляете пакетными динамическим sql?
Если нет, то откройте для себя dba_dependencies
5 ноя 19, 15:35    [22010029]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить