Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Регулярные выражения в PL/SQL 
V
    Опции темы
corpsehunter
Дата 28.12.2007, 21:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 199
Регистрация: 24.2.2007

Репутация: нет
Всего: 3



Как проверить строчку с помощью регулярный выражений в pl/sql? 
Вооще, надо проверить мыло на корректность, но, главное, расскажите как с ними (регулярными выражениями) работать, а само выражение я и сам запросто составлю...

p.s. Ничего не нашел - нашел только в оглавлении одной книжки, а саму книжку ни где найти не могу....

--------------------
Тест на IQ показал отрицательный результат...
PM MAIL   Вверх
skyboy
Дата 28.12.2007, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: нет
Всего: 260



Цитата(corpsehunter @  28.12.2007,  20:48 Найти цитируемый пост)
расскажите как с ними (регулярными выражениями) работать

саму концепцию регулярных выражений и общепринятый синтаксис можно посмотреть в Википедии
если ты о том, какие функции можно в pl/sql использовать для поиска по регулярным выражениям, так есть regexp_like(и несколько других)

Добавлено через 1 минуту и 31 секунду
Цитата(corpsehunter @  28.12.2007,  20:48 Найти цитируемый пост)
Ничего не нашел 

запрос: "основы регулярных выражений"
результат: 647 тысяч страниц.
PM MAIL   Вверх
corpsehunter
Дата 29.12.2007, 00:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 199
Регистрация: 24.2.2007

Репутация: нет
Всего: 3



Цитата(skyboy @ 28.12.2007,  22:19)

запрос: "основы регулярных выражений"
результат: 647 тысяч страниц.

Вот эта вот фраза:
Цитата(corpsehunter @ 28.12.2007,  21:48)
а само выражение я и сам запросто составлю...

обозначала, что с регулярными выражениями я встречался неоднократно, а искал я именно как ими пользвоаться в PL/SQL. Так что не надо язвить  :PPP

И забыл добавить самое главное - у меня Oracle 9i, правда я и сам уже нашел, что они появились только начиная с 10g...
--------------------
Тест на IQ показал отрицательный результат...
PM MAIL   Вверх
skyboy
Дата 29.12.2007, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: нет
Всего: 260



Цитата(corpsehunter @  28.12.2007,  23:49 Найти цитируемый пост)
И забыл добавить самое главное - у меня Oracle 9i

да, это важно.
Цитата(corpsehunter @  28.12.2007,  23:49 Найти цитируемый пост)
правда я и сам уже нашел, что они появились только начиная с 10g... 

с Oracle практически незнаком, потому имею смелость сделать предположение: если очень надо и в oracle UDF может быть не только на PL/SQL, то можно либо засунуть работу с регулярным выражениями в DLL, либо как в MSSQL сделать работу с регулярными выражениями через ActiveX. Конечно, если Oracle такое поддерживает и задержки на вызов внешних по отношению к СУБД потоков не перевешивают получаемого функционала.
PM MAIL   Вверх
skyboy
Дата 29.12.2007, 10:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: нет
Всего: 260



Цитата(corpsehunter @  28.12.2007,  20:48 Найти цитируемый пост)
Вооще, надо проверить мыло на корректность

я сразу как-то не заметил постановку задачи. а почему не проверять валидность адреса на стороне клиента БД(РНР там или ASP.NET - на чем делаешь)?
PM MAIL   Вверх
LSD
Дата 29.12.2007, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 18
Всего: 538




M
LSD
Перенесено из баз данных


Добавлено через 3 минуты и 11 секунд
Цитата(corpsehunter @  29.12.2007,  00:49 Найти цитируемый пост)
И забыл добавить самое главное - у меня Oracle 9i, правда я и сам уже нашел, что они появились только начиная с 10g...

Можно написать хранимую процедуру на Java.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
corpsehunter
Дата 29.12.2007, 21:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 199
Регистрация: 24.2.2007

Репутация: нет
Всего: 3



Цитата(skyboy @  29.12.2007,  10:13 Найти цитируемый пост)
я сразу как-то не заметил постановку задачи. а почему не проверять валидность адреса на стороне клиента БД(РНР там или ASP.NET - на чем делаешь)?

Да не, все куда проще - это для лабы надо и надо именно на Оракл, по этому просто поставил 10g и проблем нету=))))
--------------------
Тест на IQ показал отрицательный результат...
PM MAIL   Вверх
Nuzur
Дата 29.1.2008, 18:08 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

Репутация: нет
Всего: 5





corpsehunter

А чем тебе такой вариант не угодил?

Код

DECLARE
       my_var VARCHAR(50);
BEGIN

     IF( '[email protected]' LIKE '_%@_%._%' )
     THEN
         DBMS_OUTPUT.put_line(' Correct! ' );
     ELSE
         DBMS_OUTPUT.put_line(' WRONG!!!! ' );
     END IF;
END;


my_var там лишний в него хотел запихнуть разные адреса для наглядности но потом линиво стало smile Так чем такой вариант проверки не устроит?



--------------------
Never again...
PM MAIL   Вверх
LSD
Дата 30.1.2008, 13:26 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 18
Всего: 538



Цитата(Nuzur @  29.1.2008,  18:08 Найти цитируемый пост)
А чем тебе такой вариант не угодил?

Как он среагирует на [email protected]?


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Nuzur
Дата 31.1.2008, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

Репутация: нет
Всего: 5



LSD, ну знаеш, тоелепатический контакт у PL/SQL еще не видел. Так что он и на идиns@на.йух Нормально отреагирует, но суть в том что регулярность выражения аппрувлена, а про числа ты никак не словишь, ведь в названиях сайиа либо мейла запросто могут быть... так шо "не биллинговая проблема" smile
Но замечание принято.


--------------------
Never again...
PM MAIL   Вверх
corpsehunter
Дата 3.2.2008, 23:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 199
Регистрация: 24.2.2007

Репутация: нет
Всего: 3



Такое решение я тоже рассматривал... Собственно говоря, цифры в названии ящика и домена возможны, не могут они быть только в имени домена верхнего уровня, т.е. ящик типа [email protected] вполне может быть, так что числа и ловить не надо, кроме как там, где уже указано...
--------------------
Тест на IQ показал отрицательный результат...
PM MAIL   Вверх
Nuzur
Дата 4.2.2008, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

Репутация: нет
Всего: 5



corpsehunter, Если найдете более красивое решение поделитесь пожалуйста. Я такую траблу на сях в свое время решал и ничего лучше не придумал. Правда я потом и не думал дальше то smile
ЗЫ простите за оффтоп.


--------------------
Never again...
PM MAIL   Вверх
alt5000
Дата 22.4.2010, 10:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 40
Регистрация: 9.4.2006
Где: г. Выборг

Репутация: нет
Всего: нет



А как насчет split в regex'ах Оракла?
PM MAIL WWW   Вверх
DimW
Дата 22.4.2010, 10:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1330
Регистрация: 24.2.2005
Где: Орёл

Репутация: 23
Всего: 44



Цитата(alt5000 @  22.4.2010,  10:22 Найти цитируемый пост)
А как насчет split в regex'ах Оракла? 


а как насчет того, что тема обсуждалась два года назад и версия оракла 9i?
PM MAIL ICQ   Вверх
alt5000
Дата 22.4.2010, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 40
Регистрация: 9.4.2006
Где: г. Выборг

Репутация: нет
Всего: нет



Цитата(DimW @ 22.4.2010,  10:40)
а как насчет того, что тема обсуждалась два года назад и версия оракла 9i?

Я спросил, потому что интересует сплит (чтобы не начинать новые темы). Не подскажете, как в массив передать разделенные через сплит части строки?
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Oracle"
Zloxa
LSD

Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:

  • при создании темы давайте ей осмысленное название, описывающее суть проблемы
  • указывайте используемую версию базы, способ соединения и язык программирования
  • при ошибках обязательно приводите код ошибки и сообщение сервера
  • приводите код в котором возникла ошибка, по возможности дайте тестовый пример демонстрирующий ошибку
  • при вставке кода используйте соответсвующие теги: [code=sql] [/code] для подсветки SQL и PL/SQL кода, [code=java] [/code] - для Java, и т.д.

  • документация по Oracle: 9i, 10g, 11g
  • книги по Oracle можно поискать здесь
  • действия модераторов можно обсудить здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Oracle | Следующая тема »


 




[ Время генерации скрипта: 0.1030 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.