Regular Expression /BETA/
Кратко описание на регулярните изрази. С времето ще допълвам някои неща.
„^abc“ всеки низ започващ с „abc“
„abc$“ всеки низ завършващ на „abc“
„^abc$“ низ започващ и завършващ с „abc“. Това може да е единствено abc.
„abc“ низ съдържащ „abc“
„ab*“ низ съдържащ “a” последвано от нула или повече “b” (“a”, “ab”, “abbb”)
„ab+“ низ съдържащ “a” последвано от поне едно “b” (“ab”, “abbb”)
„ab?“ низ съдържащ “a” в който може да има, но може и да няма “b”
„a?b+$“ възможно “a” последвано от поне едно „b” и то е поседна буква
„ab{2}“ низ съдържащ “a” последвано от 2 “b” (“abb”);
„ab{2,}“ има поне 2 “b” след “a” (“abb”, “abbbb”);
„ab{3,5}“ “a” последвано от 3 до 5 “b” (“abbb”, “abbbb”, или “abbbbb”).
Забележка: Винаги трябва да се посочи първото число от обхвата (Да – “{0,2}”, Не – “{,2}”). Също може да сте забелязали, че символите ‘*’, ‘+’, и ‘?’ имат същия ефект като “{0,}”, “{1,}”, и “{0,1}”.
“a(bc)*” низ съдържащ “a” последвано от нула или повече “bc”
„a(bc){1,5}“ един до пет пъти „bc.“
„hi|hello“ низ съдържащ или „hi“ или „hello“
„(b|cd)ef“ низ съдържащ или „bef“ или „cdef“;
„(a|b)*c“ може да има “a” или “b”, но трябва да завършва на “c”
Точката (’.') значи който и да е символ.
„a.[0-9]“ “a” последвано от който и да е символ и цифра
„^.{3}$“ низ с точно 3 символа.
Квадратните скоби показват кои символи са допустима на дадено място.“[ab]“ низ който има или “a” или “b”.
„[a-d]“ =“[abcd]“ низ съдържащ който и да е малко буква от a до d
„^[a-zA-Z]“ низ започващ с буква
„[0-9]%“ низ с една цифра последвана от знак за процент
„,[a-zA-Z0-9]$“ низ завършващ със запетая, последвана от буква или цифра
Може и да се посочи кои символи да НЕ присъстват като се постави на първо място “^” в средни скоби.
„[^a-zA-Z]%“ символ който не е буква последван от знак за процент
„[^@]“ низ НЕ съдържащ символа @
„[A-Z]“ само главни букви
„[A-Za-z0-9]“ букви и цифри
„[!"#$%&'()*+,-./:;<=>?@[\]_`{|}~]“ специални знаци
„[A-Fa-f0-9]“ шестнадесетичен код
Използване на връзки
<([A-Z][A-Z0-9]*)b[^>]*>.*?</1>
В този пример търсим за html тагове. Използваме 1 вместо да преписваме маската ([A-Z][A-Z0-9]*) . За да разберем номера на връзката просто броим от ляво на дясно отворените средни скодби „(“. Връзките може да се използват и по следния начин: ([1-9])%1%1. Изразът ще търси стринг отговарящ на 1%5%8% или подобен.
Предварително дефинирани връзки
d = [0-9]
D = [^0-9]
s = празено място
S = няма празно място
w = [a-zA-Z0-9_].
W = [^a-zA-Z0-9_].
Примери
/[0-9]+/ – Пасва на числа от 0 до безкрайност
Допълнително информация и история @wiki
Библиотека с примери http://regexlib.com/
Тестер на регулярни изрази Свали Екран
Онлайн тестер
Етикети:
dev,
expressions,
php,
regular,
програмиране,
функции