Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Perl: Регулярные выражения > подскажите регулярку |
Автор: zomber 10.6.2014, 15:13 |
есть строка типа Y.N.N.Y.Y.Y.N.N.N.N надо зная порядковый номер выбрать значение между точками чисто регуляркой пробовал '[^.]+' и всё бы ничего но значения могут отсутствовать например Y.N.N....N.N..N и вот в этом случае '[^.]+' не работает |
Автор: Bulat 10.6.2014, 17:07 |
честно говоря не очень понял. Можно раскрыть? ![]() |
Автор: tzirechnoy 10.6.2014, 18:51 |
Ну, [^.]* Только это всё извращения, конечно. Молодой человек, зачем Вам извращения -- обычного секса мало что-ли? |
Автор: Romikgy 10.6.2014, 20:41 |
([Y|N])*\.([Y|N])*\.([Y|N])*\.([Y|N])*\.([Y|N])*\.([Y|N])*\.([Y|N])*\.([Y|N])*\.([Y|N])*\.([Y|N])* |
Автор: zomber 11.6.2014, 12:00 | ||||
для Y.N.N.Y.Y.Y.N.N.N.N первый матч должен быть Y второй N 3 - N 4 - Y etc. 11 - пустая строка для Y...Y.Y.Y.N.N.N.N первый матч должен быть Y 2 - пустая строка 3 - пустая строка 4 - Y Добавлено через 1 минуту
не катит кол-во не известно заранее и может быть в общем случае не только Y/N |
Автор: Bulat 11.6.2014, 15:24 | ||
zomber, все равно до конца не понял, но может быть
задаешь $i - получаешь результат. Или я до сих пор чего-то недопонимаю?? |