GitHub-пользователь jehna нашёл интересный метод ухода от реализации сложных регулярных выражений традиционным способом.
Вербальные выражения превращают сложный и иногда нетривиальный путь от логики до собственно регулярного выражения в ненавязчивую прогулку с использованием связанного набора функций.
Результат, мягко говоря, удивителен. Вот вербальное выражение из README-файла репозитория для тестирования правильности URL:
Вербальные выражения превращают сложный и иногда нетривиальный путь от логики до собственно регулярного выражения в ненавязчивую прогулку с использованием связанного набора функций.
Результат, мягко говоря, удивителен. Вот вербальное выражение из README-файла репозитория для тестирования правильности URL:
var tester = VerEx() .startOfLine() .then( "http" ) .maybe( "s" ) .then( "://" ) .maybe( "www." ) .anythingBut( " " ) .endOfLine();
Подобный стиль может показаться излишне простым олдскульным регулярщикам, но даже они могут согласиться, что таким способом гораздо легче описать несложное (пока, прим. пер.) регулярное выражение.
Основа проекта — JS-библиотека, но также имеется куча реализаций и на других языках.
ссылка на оригинал статьи http://habrahabr.ru/post/189852/
Добавить комментарий