Javascript String match ()

Методът JavaScript String match () връща резултата от съвпадение на низ с регулярен израз.

Синтаксисът на match()метода е:

 str.match(regexp)

Тук str е низ.

Параметри на match ()

В match()метода се в:

  • regexp - Регулярно изразен обект (Аргументът се преобразува имплицитно, RegExpако не е RegExpобект)

Забележка: Ако не зададете никакви параметри, match()връща ("").

Върната стойност от match ()

  • Връща Arrayсъдържащо съвпадения, по един елемент за всяко съвпадение.
  • Връща, nullако не е намерено съвпадение.

Пример 1: Използване на match ()

 const string = "I am learning JavaScript not Java."; const re = /Java/; let result = string.match(re); console.log("Result of matching /Java/ :"); console.log(result); const re1 = /Java/g; let result1 = string.match(re1); console.log("Result of matching /Java/ with g flag:") console.log(result1);

Изход

 Резултат от съвпадение / Java /: ('Java', индекс: 14, вход: 'Уча JavaScript, а не Java.', Групи: неопределено) Резултат от съвпадение / Java / с g флаг: ('Java', 'Java' )

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

Забележка : Ако регулярният израз не включва gфлага, str.match()ще върне само първото съвпадение, подобно на RegExp.exec(). Върнатият артикул ще има и следните допълнителни свойства:

  • groups - Обект от поименни групи за улавяне, които имат ключове като имена и стойности като заснети съвпадения.
  • index - Индексът на търсене, където е намерен резултатът.
  • input - Копие на низа за търсене.

Пример 2: Съвпадащи секции в низ

 const string = "My name is Albert. YOUR NAME is Soyuj."; // expression matches case-insensitive "name is"+ any alphabets till period (.) const re = /namesiss(a-zA-Z)+./gi; let result = string.match(re); console.log(result); // ( 'name is Albert.', 'NAME is Soyuj.' ) // using named capturing groups const re1 = /namesiss(?(a-zA-Z)+)./i; let found = string.match(re1); console.log(found.groups); // (name: "Albert")

Изход

 („името е Albert.“, „NAME е Soyuj.“) (име: „Albert“)

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

Препоръчително четене: JavaScript String matchAll ()

Интересни статии...