На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Qraizer, Hsilgos
Страницы: (2) 1 [2]  все  ( Перейти к последнему сообщению )  
> Фильтрация файлов в директории по расширению
    Регулярки – штука довольно интересная. И востребована, не даром их поддержка есть во многих языках. (А некоторые так на них вообще и основаны даже. Да, Majestio ;) ?) Для твоей задачи преобразования маски в регулярку достаточно знать, что:
    • . означает любой символ;
    • * означает, что предшествующий символ или группа повторяется произвольное количество раз, возможно 0; в некоторых грамматиках захватывает максимально возможное количество (т.н. жадное сопоставление);
    • ? означает, что предшествующий символ * превращается в нежадный, т.е. захватывает наивозможный минимум раз;
    • \ означает, что следующий символ распознаётся как обычный, а не командный;
    • остальные... ну как остальные, кроме командных, их больше, чем я тут перечислил... символы сопоставляются в точности, как указаны.
    Т.е. маска, скажем FileTxt?2.* должна быть преобразована в регулярку FileTxt.2\..*?, где красный суть любой одиночный символ, оранжевый означает просто символ ., а не командный . (т.е. не обозначает любой символ), а синий означает нежадное (в маске * работает именно нежадно) количество любых символов.
    Но естественно у регулярок куда больше возможностей. Так что я бы рекомендовал ими позаниматься.

    Добавлено
    P.S. Маске *.* будет соответствовать .*?\..*? :D
    Сообщение отредактировано: Qraizer -
      Цитата Qraizer @
      (А некоторые так на них вообще и основаны даже. Да, Majestio ?)

      На Перл намёкиваешь? :lol: Да, в Перле регулярки являются частью языка. Это его отличает от других ЯП, в которых регулярки используются в виде подключаемых библиотек.
        Цитата Majestio @
        Перл

        :wub:

        Добавлено
        Цитата Majestio @
        Это его отличает от других ЯП, в которых регулярки используются в виде подключаемых библиотек.

        Даёшь pcre в каждый ЯП :lol:
        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
        0 пользователей:


        Рейтинг@Mail.ru
        [ Script execution time: 0,0201 ]   [ 16 queries used ]   [ Generated: 27.04.24, 07:08 GMT ]