Russian Qt Forum
Май 07, 2024, 00:50 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Проблема с regex  (Прочитано 4319 раз)
developer
Гость
« : Апрель 21, 2009, 23:15 »

Может кто-нибуть сталкивался со следующей проблемой. Есть строка "create_db_alias alias_name user='user_name' password='password' host='host'"
Нужно с помощью одного regex обязательно найти три опции(user, password, host) и их значения, причем если хотя б одна из опций не существует, то ничего не возвращать(то-есть regex не должен срабатывать).
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #1 : Апрель 22, 2009, 11:11 »

Для меня регэксп это ступор на 2-3 дня  Смеющийся

Но есть уникальная программа в Linux

kregexpeditor


Визуально строит всякие мерзопакостные регэкспы) Очень помогает.
Записан
developer
Гость
« Ответ #2 : Апрель 22, 2009, 16:06 »

Ну и на етом тоже спасибо  Улыбающийся Улыбающийся Улыбающийся
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3258


Просмотр профиля
« Ответ #3 : Апрель 22, 2009, 21:10 »

делал недавно такое на .НЕТе, там это называется вроде группы или как-то так... что-то типа (?<name>\\w+) завтра буду на работе, не забуду - гляну точный код
Записан
Tonal
Гость
« Ответ #4 : Апрель 23, 2009, 07:20 »

Данных таки однако мало. Например, можно так:
Код:
rx = ".* user='([^']+)' password='([^']+)' host='([^']+)'"
Ну и в зависимости от вариаций этот регексп апгрейдить. Например учесть возможность пробелов перед и после знака равенства... Улыбающийся

Вообще-то, я совсем не понимаю эти стенания по поводу регэкспов.
Нам тут понадобилось кучу регекспов написать, так у меня сынка выучил их за 2-3 дня (10ый класс) и потом писал вполне грамотные.
До этого специально проганьем не занимался. Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.049 секунд. Запросов: 23.