Почему мой JavaScript выводит странно, когда я реализую регулярное выражение .match? - PullRequest
0 голосов
/ 06 августа 2020

Итак, я получал такой вывод в последнее время, когда я кодирую, но я просто хочу убедиться, что он нормальный или, может быть, я что-то делаю не так. Вот простой код ... возможно, это связано с регулярным выражением.

моя консоль говорит: «(1) ['a', index: 1, input: 'karina', groups: undefined]»

function reg(s) {
    reg = /[aeiou]/;
    console.log(s.match(reg));
}
reg("turtle");

1 Ответ

1 голос
/ 06 августа 2020

Ваш код работает нормально. Метод .match () сравнит строку и RegEx, которые вы определили, и вернет массив с первым найденным совпадением и по какому индексу.

Если вы хотите вернуть массив со всеми результаты и без другой информации, все, что вам нужно сделать, это добавить "g" в конце вашего RegEx. Ваша функция должна выглядеть так:

function reg(s) {
    reg = /[aeiou]/g;
    console.log(s.match(reg));
}

reg('turtle');

"g" в конце будет так, что .match () будет искать и захватывать все вхождения в проверяемой строке, а не просто первый.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...