Редовни изрази в JavaScript - Ръководство за регулярни изрази

Съдържание:

Anonim

Въведение в регулярните изрази в JavaScript

Редовните изрази са низ от знаци, които се използват за валидиране на съдържанието на друг низ. Тези низове от символи, които формират регулярния израз, се съхраняват в обект.

Синтаксис

var regEx = /^(A-Za-z)/;

Тук променливият обект, наречен „regEx“, държи модела на регулярния израз. Сега нека тестваме дали друг низ съответства на този редовен израз.

код

var str = "EduCBA";
var regEx = /^(A-Za-z)/;
var res = "false";
if(str.match(regEx))(
res= "true";
)
alert(res);

изход:

вярно

Тук в горния пример, регулярният израз проверява дали низ съдържа само азбуки от A до Z в горните и долните случаи. Ако го направи, той връща "вярно", ако не "невярно".

Синтаксис на редовен израз в JavaScript

Редовният израз се състои от две части. Първата част е шаблона, последван от незадължителен флаг.

Синтаксис

var regEx = /pattern/flag

Флаговете също се наричат ​​модификатори. Малко често се използват незадължителни флагове

  • g - глобален

Намира множество съвпадения. Ако не се използва спира след първия мач.

код

var str = "I scream, you scream, we all scream for ice cream";
var regEx = / scream/g;
var result = str.match(regEx);
alert( result );

изход:

крещя, крещи, крещи // Връща всички съвпадения в низ.

  • аз - случай на игнориране

Това е нечувствително към регистъра и съответства както на горните, така и на долните случаи. Ако не е зададено, тогава търсенето е чувствително към регистъра.

код

var str = "Hello EduCBA";
var regEx = /educba/i;
alert( str.search(regEx) );

изход:

6 // връща индекса, в който е намерен низът

сигнал (str.search (/ educba /)); // без глобален флаг

изход:

-1

  • m - многоредова

Засяга поведението на знаците „^” и „$”. В случай на многоредови, той търси съвпадения в началото и в края на всеки ред, а не този на целия низ. Ако не е в многоредов режим, тогава се връщат само съвпаденията от целия низ.

код

var str = `I scream,
you scream,
we all scream for ice cream`;
var regEx = /^\w+/gm;
var result = str.match(regEx);
alert( result );

изход:

Аз, ти, ние // отпечатваме първата дума на всеки ред.

Сега, нека да разгледаме моделите в редовния израз. Моделът се състои от диапазони, метасимволи, количествени характеристики и т.н.

Метахарактори на регулярни изрази в JavaScript

Метахарактеристите формират основата на модела на регулярния израз. Това са комбинация от обратна наклонена черта с азбучен символ, който заедно образува метасимвол и всеки от тях има специално значение, свързано с всеки от тях. Например „\ n“ означава нов ред. Няколко други примера са метасимволи.

  1. \ t - използва се за намиране на символ на раздела.
  2. \ v - използва се за намиране на вертикален символ на раздела.
  3. \ s - използва се за намиране на бели символи.
  4. \ S - използва се за намиране на небели символи за интервал.
  5. \ d - използва се за намиране на цифрови цифри.
  6. \ D - използва се за намиране на нунови цифрови цифри.
  7. \ w - използва се за намиране на думи.
  8. \ W - използва се за намиране на нещо, освен думи.
  9. , - точка се използва за намиране на единичен знак, различен от новата линия или края на реда.
  10. \ 0 - използва се за намиране на нулев символ.

Набори и диапазони на регулярни изрази в JavaScript

В този сценарий квадратните скоби се използват като част

Синтаксис

Say, for the set (abc) – only the characters a, b and c are to be considered.

Примери 1

  1. (abc) - това е всеки символ, различен от abc.
  2. (a | b) - Или a или b могат да бъдат разгледани.

В случай на диапазони се предоставя интервал между този диапазон, всички символи трябва да бъдат взети под внимание. Например: (az) означава, че всички знаци от до z в малки букви ще бъдат взети под внимание.

Примери 2

  1. (0-9) - всички знаци от нула до девет.
  2. (AZ) - всички символи от А до Я в главни букви.

Квантори на регулярни изрази в JavaScript

Те се означават с помощта на специални знаци. Всеки специален знак има значение, свързано с него. Тези знаци се използват заедно с регулярни изрази. Малко от най-използваните квантори са:

  1. * - Съответства на низ, съдържащ нула или повече инстанции.
  2. + - Съответства на низ, съдържащ един или повече инстанции.
  3. ? - Съответства на низ, съдържащ нула или един екземпляр.
  4. (n) - Тук "n" приема число. Съответства на необходимия редовен израз с броя пъти, споменати вместо „n“.
  5. $ - Съответства на дадения израз с края на низа.
  6. - Съответства на дадения израз с началото на низа.
  7. ? = - Съответства на всеки низ с образеца на регекс след знака равен.
  8. ?! - Съответства на всеки низ, който не съдържа образеца на регекс след възклицателния знак.

Свойства на регулярните изрази в JavaScript

Състои се от следните свойства:

  1. Конструктори - Определя коя функция е създала прототипа на обекта с редовен израз.
  2. Global - Проверява дали е зададено знамето „g“.
  3. Игнорирайте случай - проверява дали флагът „i“ е зададен.
  4. Последният индекс - Определя позицията на индекса, от която следва да започне следващият мач.
  5. Multiline - Проверява дали флагът „m“ е зададен.
  6. Източник - дава текста на модела на регулярния израз.

Методи в регулярни изрази и струни

Често използвани методи в регулярни изрази

  1. exec () - Изпълнява да търси съвпадения в низ и връща първото съвпадение. Ако не се намери съвпадение, след това връща нула.
  2. test () - Тестове за съвпадения в низ и връща резултата под формата на Boolean. Тоест ако се намери съвпадение, то връща вярно, ако не, тогава връща невярно.
  3. toString () - Връща еквивалентен низов обект на регулярния израз.

Низови методи, които са полезни при работа с регулярни изрази

  1. match () - Това е метод String, който търси съвпадение в низ. Ако е намерено, връща съвпадението, ако не, тогава връща нула.
  2. matchAll () - Това е метод String, който търси всички съвпадения в низ.
  3. split () - Това е стринг метод, използван за разчупване на низ въз основа на предоставения редовен израз.
  4. search () - Това е низов метод, използван за търсене на съвпадение с дадения редовен израз. Връща 0 при успех и -1 при неуспех.

заключение

Редовните изрази могат да бъдат написани чрез използване на различни комбинации от метахарактори, количествени характеристики и знамена, когато това се изисква. Те също идват със собствен набор от методи и също така работят добре с често използвани стринг методи. Човек лесно би могъл да ги използва за валидиране или ограничаване на съдържанието според изискванията.

Препоръчителни статии

Това е ръководство за регулярни изрази в JavaScript. Тук сме обсъдили Синтаксис към регулярни изрази в JavaScript, метахарактори, набори и диапазони, квантори, свойства, методи с изходи. Можете също да прегледате нашите статии, за да научите повече-

  1. Как работи JavaScript
  2. Какво е JavaScript?
  3. Как да инсталирате JavaScript
  4. Въведение в JavaScript
  5. Функции на Regex в Python (пример)