Шпаргалка за регулярними виразами PHP
^ - Початок рядка
$ - Кінець рядка
.
- Будь-який символ крім переказів рядка (без параметра /.../s)
[...] - Будь-який з перерахованого набору символів. Усередині квадратних дужок не працюють інші оператори, але можна користуватися метасимвол. За допомогою дефіса можна вказувати набори символів: від першого до останнього. Наприклад, [af] означає будь-яку букву з числа a, b, c, d, e, f.
[^ ...] - Жоден з перерахованого набору символів. Усередині квадратних дужок не працюють інші оператори, але можна користуватися метасимвол. За допомогою дефіса можна вказувати набори символів: від першого до останнього. Наприклад, [^ 0-9] означає будь-який символи, крім 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
\ # - Наступний за слешем символ # (крім az і 0-9). Наприклад, \\ означає символ \, \. означає символ. (Точка), \ $ означає символ $ і т. Д.
\ b - Початок слова
\ B - Кінець слова
[[: alnum:]] - буквено-цифрові символи
[[: digit:]] - десяткові цифрові символи
[[: xdigit:]] - шістнадцяткові цифрові символи
[[: alpha:]] - літерні символи
[[: upper:]] - прописні буквені символи
[[: lower:]] - рядкові літерні символи
[[: punct:]] - знаки пунктуації
[[: space:]] - символи пробілу
[[: blanc:]] - символи табуляції і пробілу
[[: print:]] - друковані символи
[[: cntrl:]] - керуючі символи
[[: graph:]] - друковані символи, за винятком пробільні
\ xNN - NN - шістнадцятковий код ASCII-символу (\ x20 - пробіл, \ x4A - J, \ x6A - j і т. д.)
\ t - символ табуляції
\ n - новий рядок
\ r - переклад каретки
\ а - переклад формату
\ v - вертикальна табуляція
\ a - дзвінок
\ e - escape
\ 033 - восьмерична запис символу
\ x1A - шістнадцяткова
\ c - control символ
\ l - нижній регістр наступного символу
\ u - великі букви - // -
\ L - все символи в нижньому регістрі до \ E
\ U - в верхньому - // -
\ E - обмежувач зміни регістру
\ Q - скасування дії як метасимвола
\ w - алфавітно-цифровий або '_' символ
\ W - ні - // -
\ s - один пробіл
\ S - один не пробіл
\ d - одна цифр
\ D - одна не цифра
\ b - межа слова
\ B - НЕ межа слова
\ A - початок рядка для кожного рядка в многострочной рядку
\ Z - кінець рядка для кожного рядка в многострочной рядку
\ G - кінець дії m // g
(...) - Згрупувати символи в один патерн і запам'ятати
|
- Попередній або наступний патерн (логічне "АБО")
* - Нуль або більше разів
+ - Один або більше разів
?
- 0 або 1 раз попередня маска
{n} - Повторювати n раз
{n,} - Повторювати n або більше разів
{n, m} - Повторювати від n до m раз
? #N - Це оператор "перегляду назад". N - число символів для перегляду.
? ~ N - Заперечення перегляду назад.
? = - Перегляд вперед.
?!
- Заперечення перегляду вперед.
i - Не будете звертати уваги рядкові і великі літери.
m - вважати рядок многострочной.
s - однорядкова рядок.
x - розширений синтаксис (використання прогалин і коментарів)
e - після виконання стандартних підстановок в замінної рядку інтерпретує її як PHP-код і використовує результат для заміни шуканої рядка.
A - відповідність шаблону буде досягатися тільки в тому випадку, якщо він відповідає початку рядка, в якій проводиться пошук.
D - метасимвол $ в шаблоні відповідає тільки закінченню оброблюваних даних. Без цього модифікатора метасимвол $ відповідає також позиції перед останнім символом, в разі, якщо їм є новий рядок (але не поширюється на будь-які інші переклади рядків). Даний модифікатор ігнорується, якщо використовується модифікатор m. У мові Perl аналогічний модифікатор відсутній.
S - якщо даний модифікатор використовується, проводиться додатковий аналіз шаблону. У цьому це має сенс тільки для фіксованих шаблонів, що не містять змінних посилань.
U - модифікатор інвертує жадібність квантіфікаторов, таким чином вони за умовчанням не жадібні. Але стають жадібними, якщо за ними слід символ '?'. Така можливість не сумісна з Perl. Модифікатор U також може використовуватися усередині шаблону, за допомогою '? U' записи.
X - включає додаткову функціональність PCRE, яка не сумісна з Perl: будь-яку зворотну слеш в шаблоні, за яким слід символ, який не має спеціального значення, призводять до помилки. Це обумовлено тим, що подібні комбінації зарезервовані для подальшого розвитку. За замовчуванням ж, як і в Perl, слеш з наступним за ним символом без спеціального значення трактується як as помилка. На сьогоднішній день це все можливості, які управляються даними модифікатором
u - включає додаткову функціональність PCRE, яка не сумісна з Perl: шаблони обробляються як UTF8 рядка. Модифікатор u доступний в PHP 4.1.0 і вище для Unix-платформ, і в PHP 4.2.3 і вище для Windows платформ.
(? # коментар) - коментар в тілі шаблону.
(?: шаблон) - угруповання як і '()', але без обратнойnссилкі
(? = шаблон) - "заглядання" вперед. Наприклад / \ w + (? = \ T) / відповідає слову, за яким йде табуляція, але символ '\ t' не включається в результат.
\ ЧИСЛО - Посилання всередині регекспа на його ж розібрану дужку, де ЧИСЛО - номер потрібної групи (дужки). Цей оператор працює з деякими обмеженнями на тип засиланого блоку - він працює, тільки якщо в посилається скобці немає операторів повторення.
Коментарі
Коментуючи, пам'ятайте про те, що зміст і тон Вашого повідомлення можуть зачіпати почуття реальних людей, проявляйте повагу та толерантність до своїх співрозмовників навіть у тому випадку, якщо Ви не поділяєте їхню думку, Ваша поведінка за умов свободи висловлювань та анонімності, наданих інтернетом, змінює не тільки віртуальний, але й реальний світ. Всі коменти приховані з індексу, спам контролюється.