Регулярні символи | Опис |
---|---|
\ | Позначає наступний символ як спеціальний символ, або буквений символ, або зворотні лапки, або вісімковий екран. Наприклад, "n " відповідає символу "n "。"\n " відповідає символу нового рядка. Серійний"\\ "відповідає "\ " і "\( "збігається"( "。 |
^ | збігається з початком вхідного рядка. Якщо встановлено властивість Multiline об'єкта RegExp, ^ також збігається з "\n " або "\r " з наступною позицією. |
$ | збігається з кінцевою позицією вхідного рядка. Якщо встановлено властивість Multiline об'єкта RegExp, $ також відповідає "\n " або "\r " перед позицією. |
* | Збігається з попереднім під-виразом нуль або більше разів. Наприклад, zo* може відповідати "z ", а також "zoo ". * еквівалентно {0,}. |
+ | Збігається з попереднім під-виразом один або більше разів. Наприклад, "zo+ " може відповідати "zo ", а також "zoo ", але не може співпадати з "z ". + еквівалентно {1,}. |
? | Збігається з попереднім під-виразом нуль або один раз. Наприклад, "do(es)? " може збігатися з "does " або "does " у "do ".? Еквівалентно {0,1}. |
{n} | n невід'ємне ціле число. Співпадіння визначаєтьсяn разів. Наприклад, "o{2} " не може співпадати з "Bob " у "o ", але може збігатися з обома "o" у "food " в обох "о". |
{n,} | n невід'ємне ціле число. Збіг повинен бути не меншеn разів. Наприклад, "o{2,} " не може співпадати з "Bob " у "o ", але може збігатися з усіма "o" у "foooood " для всіх "o" у " ".o{1,} "еквівалентно "o+ "。"o{0,} "тоді еквівалентно "o* "。 |
{n,m} | m іn обидва невід'ємні цілі числа, деn<=m . Збігаються не меншеn разів і не більшеm разів. Наприклад, "o{1,3} " збігатиметься з першими трьома "о" у "fooooood " для перших трьох "о" у "o{0,1} " еквівалентно "o? ". Зауважте, що між комою та двома числами не може бути пробілу. |
? | Якщо за цим символом одразу слідує будь-який інший символ обмеження (*,+,? , {n},{n,},{n,m }), шаблон є нежадібним. Нежадібний шаблон відповідає якомога меншій кількості шуканих рядків, тоді як типовий жадібний шаблон відповідає якомога більшій кількості шуканих рядків. Наприклад, для рядка "oooo ","o+? " буде знайдено лише один "o ", тоді як "o+ " буде відповідати усім "o "。 |
. | відповідає будь-якому окремому рядку, крім "\ n " для будь-якого окремого символу, окрім ". Щоб знайти будь-який символ, включаючи "\ n ", використовуйте шаблон на кшталт "(.|\n) " шаблон. |
(pattern) | Збігається з шаблоном і отримує цей збіг. Результуючий збіг можна отримати з результуючої колекції Matches, використовуючи колекцію SubMatches у VBScript або атрибут $0...$9 у JScript. Для пошуку символів у круглих дужках використовуйте символи "\( " або "\) "。 |
(?:pattern) | збігається з шаблоном, але не витягує результат, тобто це збіг, який не витягується і не зберігається для подальшого використання. Це робиться за допомогою символів або "(|) " для об'єднання частин шаблону є корисним. Наприклад, "industr(?:y|ies) " є коротшим виразом, ніж "industry|industries " є більш скороченим виразом. |
(?=pattern) | Позитивно-стверджувальна попередня перевірка, яка збігається з рядком пошуку на початку будь-якого рядка, що збігається з шаблоном. Це перевірка без вилучення, тобто збіг не потрібно вилучати для подальшого використання. Наприклад, "Windows(?=95|98|NT|2000) " може відповідати "Windows2000 " у "Windows ", але не може збігатися з "Windows3.1 " у "Windows ". Пре-перевірки не споживають символів, тобто, коли відбувається збіг, пошук наступного збігу починається одразу після останнього збігу, а не після символу, що містить пре-перевірку. |
(?!pattern) | Позитивні та негативні попередні перевірки збігаються з шуканим рядком на початку будь-якого рядка, який не збігається з шаблоном. Це збіг без вибірки, тобто збіг не потрібно вибирати для подальшого використання. Наприклад, "Windows(?!95|98|NT|2000) " може відповідати "Windows3.1 " у "Windows ", але не може збігатися з "Windows2000 " у "Windows ". Попередні перевірки не споживають символів, тобто після того, як відбувається збіг, пошук наступного збігу починається одразу після останнього збігу, а не після символу, що містить попередню перевірку. |
(?<=pattern) | Зворотні стверджувальні пре-перевірки аналогічні прямим стверджувальним пре-перевіркам, тільки у зворотному напрямку. Наприклад, "(?<=95|98|NT|2000)Windows " може відповідати "2000Windows " в "Windows ", але не може відповідати "3.1Windows " в "Windows "。 |
(?<!pattern) | Зворотне заперечне передумовування аналогічне прямому заперечному передумовуванню, тільки у зворотному напрямку. Наприклад, "(?<!95|98|NT|2000)Windows "може відповідати "3.1Windows " у "Windows ", але не може співпадати з "2000Windows " у "Windows "。 |
x|y | збігається з x або y. Наприклад, "z|food " може збігатися з "z " або "food "。"(z|f)ood " тоді збігається з "zood " або "food "。 |
[xyz] | Набір символів. Відповідає будь-якому з включених символів. Наприклад, "[abc] " може відповідати "plain " у наборі "a "。 |
[^xyz] | Негативний набір символів. Відповідає будь-якому символу, що не входить до набору. Наприклад, "[^abc] " може відповідати "plain " в діапазоні "p "。 |
[a-z] | діапазоні символів. Відповідає будь-якому символу у вказаному діапазоні. Наприклад, "[a-z] " може відповідати символам від "a " до "z " для будь-яких малих літер у діапазоні. |
[^a-z] | Діапазон від'ємних символів. Відповідає будь-якому довільному символу, що не входить до вказаного діапазону. Наприклад, "[^a-z] " може відповідати будь-якому символу, що не входить до діапазону від "a " до "z " діапазон довільних символів. |
\b | Відповідає межі слова, тобто позиції між словом і пробілом. Наприклад, "er\b " може відповідати "never " в "er ", але не може відповідати "verb " в "er "。 |
\B | збігається з не-межами слів. "er\B " може збігатися "verb " у "er ", але не може збігатися з "never " у "er "。 |
\cx | Відповідає керуючому символу, вказаному за допомогою x. Наприклад, \cM відповідає символу керування M або символу повернення каретки. x повинен мати значення одного з A-Z або a-z. В іншому випадку, вважайте c оригінальним символом "c " символ. |
\d | Відповідає числовому символу. Еквівалентно [0-9]. |
\D | Відповідає нечисловому символу. Еквівалентно [^0-9]. |
\f | Відповідає символу розриву сторінки. Еквівалентно \x0c і \cL. |
\n | Відповідає символу переведення рядка. Еквівалентно \x0a та \cJ. |
\r | Відповідність символу повернення каретки. Еквівалентно \x0d і \cM. |
\s | Відповідає будь-якому символу пробілу, зокрема пробілам, табуляції, розриву сторінки тощо. Еквівалентно [ \f\n\r\t\v]. |
\S | Відповідає будь-якому не пробільному символу. Еквівалентно [ ^ \f\n\r\t\v]. |
\t | Відповідає символу табуляції. Еквівалентно \x09 та \cI. |
\v | Відповідає вертикальній табуляції. Еквівалентно \x0b і \cK. |
\w | Відповідає будь-якому символу слова, який містить символ підкреслення. Відповідає символу "[A-Za-z0-9_] "。 |
\W | Відповідає будь-якому символу, що не є словом. Еквівалентно "[^A-Za-z0-9_] "。 |
\xn | Відповідаєn деn шістнадцяткове значення екранування. Шістнадцяткове значення екранування повинно мати довжину не менше двох цифр. Наприклад, "\x41 " відповідає "A "。"\x041 " буде еквівалентно "\x04&1 ". У регулярних виразах можна використовувати кодування ASCII. . |
\num | Збігnum деnum натуральне число. Посилання на отриманий збіг. Наприклад, "(.)\1 " відповідає двом послідовним однаковим символам. |
\n | Ідентифікує вісімкове значення екранування або зворотне посилання. Якщо \n передує принаймніn підвиразів, тоn є зворотним посиланням. В іншому випадку, якщоn є вісімковим числом (0-7), тоn є вісімковим значенням екранування. |
\nm | Визначає вісімкове значення екранування або зворотне посилання. Якщо перед \nm передує принаймніnm під-виразом get, тоnm є зворотним посиланням. Якщо \nm передувало принаймніn кількість здобутків, тоn є зворотним посиланням, за яким слідує текстm зворотного посилання. Якщо жодна з попередніх умов не виконується, якщоn іm є вісімковими числами (0-7), то \nm буде відповідати вісімковому значенню екрануванняnm。 |
\nml | Якщоn є вісімковим числом (0-3), а m і l є вісімковими числами (0-7), то збігаються з вісімковим значенням екрануnml。 |
\un | збігаєтьсяn деn символ Unicode, представлений чотирма шістнадцятковими цифрами. Наприклад, \u00A9 відповідає символу авторського права (©). |
Ім'я користувача | /^[a-z0-9_-]{3,16}$/ |
---|---|
Пароль | /^[a-z0-9_-]{6,18}$/ |
Пароль2 | (?=^.{8,}$)(?=.*\d)(?=.*\W+)(?=.*[A-Z])(?=.*[a-z])(?!.*\n).*$ (складається з цифр/великих літер/малих літер/розділові знаки, всі чотири повинні бути присутніми, 8 або більше цифр) |
Шістнадцяткове значення | /^#?([a-f0-9]{6}|[a-f0-9]{3})$/ |
/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/ /^[a-z\d]+(\. [a-z\d]+)*@([\da-z](-[\da-z])?) +(\. {1,2}[a-z]+)+$/ або\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* | |
URL | /^(https?:\/\/)? ([\da-z\. -]+)\. ([a-z\.] {2,6})([\/\w \...-]*)*\/? -]*)*\/? $/ або[a-zA-z]+://[^\s]* |
IP-адреса | /((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)/ /^(? :(? :25[0-5]|2[0-4][0-9]|[01]? [0-9][0-9]?) \.) {3}(? :25[0-5]|2[0-4][0-9]|[01]? [0-9][0-9]?) $/ або((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?) |
HTML-теги | /^<([a-z]+)([^<]+)*(? :>(. *)<\/\1>|\s+\/>)$/ або<(.*)(.*)>.*<\/\1>|<(.*) \/> |
Видалити код \\\ коментарі | (?<!http:|\S)//.*$ |
Співставлення двобайтових символів (включно з кандзі) | [^\x00-\xff] |
Ієрогліфи (символи) | [\u4e00-\u9fa5] |
Діапазон китайських ієрогліфів у кодуванні Unicode | /^[\u2E80-\u9FFF]+$/ |
Китайські та повні розділові знаки (символи) | [\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee] |
Дата (рік-місяць-день) | (\d{4}|\d{2})-((0?([1-9]))|(1[1|2]))-((0?[1-9])|([12]([1-9]))|(3[0|1])) |
Дата (місяць/день/рік) | ((0?[1-9]{1})|(1[1|2]))/(0?[1-9]|([12][1-9])|(3[0|1]))/(\d{4}|\d{2}) |
Час (година:хвилина, 24-годинна система) | ((1|0?)[0-9]|2[0-3]):([0-5][0-9]) |
Номер стаціонарного телефону в материковому Китаї | (\d{4}-|\d{3}-)?(\d{8}|\d{7}) |
Номер мобільного телефону в материковому Китаї | 1\d{10} |
Поштовий індекс Китаю | [1-9]\d{5} |
Номер посвідчення особи в материковому Китаї (15 або 18 цифр) | \d{15}(\d\d[0-9xX])? |
Ціле невід'ємне число (додатне число або нуль) | \d+ |
Додатне ціле число | [0-9]*[1-9][0-9]* |
Від'ємне ціле число | -[0-9]*[1-9][0-9]* |
Ціле число | -?\d+ |
Дробове | (-?\d+)(\.\d+)? |
Порожні рядки | \n\s*\r або \n\n(editplus) або ^[\s\S ]*\n |
QQ-число | [1-9]\d{4,} |
Слова, які не містять abc | \b((?!abc)\w)+\b |
Збіг першого та останнього пропущених символів | ^\s*|\s*$ |
Зазвичай використовуються редакторами | Ось деякі заміни для спеціальних китайських ієрогліфів(editplus) ^[0-9].*\n ^[^th]. *\^[^th]. ^[Вправа]. *\n ^[\s\S ]*\n ^[0-9]*\. ^[\s\S ]*\n <p[^<>*]> href="javascript:if\(confirm\('(.*?)'\)\)window\.location='(.*?)'" <span style=".[^"]*rgb\(255,255,255\)">.[^<>]*</span> <DIV class=xs0>[\s\S]*?</DIV> |
Синтаксис регулярних виразів для вас: таблиця швидкого пошуку регулярних виразів, запит синтаксису регулярних виразів, загальновживаний синтаксис регулярних виразів, базовий синтаксис регулярних виразів, синтаксис під-виразів, модифікатор регулярних виразів, жадібний режим регулярних виразів, не жадібний режим регулярних виразів, за допомогою простого і швидкого способу досягти контролю над рядком.