четверг, 23 ноября 2017 г.

RegExp

Литеральные символы:
  • \0 - символ 0 NUL (\u0000)
  • \t - табулостоп (\u0009)
  • \n - новая строка (\u000A)
  • \v - вертикальная табуляция (\u000B)
  • \r - возврат каретки (\u000D)
Классы символов:
  • [...] - любой символ в квадратных скобках
  • [^...] - любой символ отличный от символов в квадратных скобках
  • . - любой символ кроме конца строки или возврата каретки
  • [.] - символ точки
  • [+] - символ плюса.
    Внутри квадратных скобок теряет силу и становится просто символами.
  • \w - любая буква, цифра или символ подчеркивания.
    Равносильно [a-zA-Z0-9_]
  • \W - любой символ не являющийся буквой, цифрой или символом подчеркивания.
    Равносильно [^a-zA-Z0-9_]
  • \s - любой пробельный отступ (пробел, неразрывный пробел, табулостоп и тд)
  • \S - любой символ не являющийся пробельным символом.
  • \d - любая цифра от 0 до 9.
    Равносильно [0-9]
  • \D - любой символ не являющийся цифрой от 0 до 9.
    Равносильно [^0-9]
  • [\b] - знак возврата на одну позицию назад (клавиша Backspace)

Повторение:
  • {n, m} -  повторить как минимум n, но не более m раз
  • {n, } - повторить n и более раз
  • {n} - повторить точно n раз
  • ? - повторить предыдущий элемент ноль или один раз.
    То есть предыдущий элемент необязателен.
    Равносильно {0, 1}
  • + - повторить один или более раз.
    Равносильно {1, }
  • * - повторить произвольное количество раз, включая нулевое.
    Равносильно {0, }
Альтернативы, группы и ссылки:
  • | - или
  • (...) - группировка нескольких элементов в один элемент, к которому может быть применен символ *, +, ? или |.
    Символы , возвращенный группой, могут использоваться для ссылки далее в регулярном выражении.
  • (?:...) - только группировка.
    Возвращаемые символы не используется в ссылках и не имеют номера.
  • \n - ссылка, то есть подстановка символов, возвращенных группой номер n.
    Группы являются подвыражениями (возможно, вложенными) и нумеруются слева направо.
    Если группы вложенные, нумеруются открывающие скобки.
    Группы, начинающиеся символами (?:,) в нумерации пропускаются.
Элементы якорных выражений:
  • ^ - начало строки (в многострочном или однострочном тексте)
     
  • $ - конец строки (в многострочном или однострочном тексте)
  • \b - граница слова, т.е. позиция между \w и \w или между \w и концом строки.
    (однако [\b] соответствует символу возврата - клавише Backspace)
  • \B - позиция, не являющаяся границей слова
  • (?=p) - положительное условие на последующие символы.
    Требует, чтобы последующие символы соответствовали шаблону p, но не включают эти символы в найденную строку.
  • <?!p) - отрицательное условие на последующие символы.
    Требует, чтобы последующие символы не соответствовали шаблону p.

Флажки: 
  • i - задание соответствий, нечувствительных к регистру
  • g - глобальный поиск.
    Процедура поиска не останавливается, найдя первое соответствие, а ищет их все.
     
  • m - многострочный режим.
    Символ ^ соответствует началу каждой строки и всего текста, а символ $ - концу каждой строки и всего текста. 

Комментариев нет:

Отправить комментарий