Показать сообщение отдельно
  #1 (permalink)  
Старый 09.01.2019, 23:27
Интересующийся
Отправить личное сообщение для ishurgaya Посмотреть профиль Найти все сообщения от ishurgaya
 
Регистрация: 12.08.2015
Сообщений: 29

Пытаюсь сделать проверку начинается ли строка с набора букв
Добрый день.

var str = 'соус острый яблоки красные кляб';
var regex = /^соус\S*/ig;
console.log(str.search(regex));


Код работает показывает 0, так как найдено совпадение в позиции 0.

Но у меня и строка в переменной и искомое слово тоже в отдельной переменной.

Пытаюсь сделать так, но получаю -1, то есть ничего не найдено:
var str = 'соус острый яблоки красные кляб';
var word = 'coyc';
var pattern = new RegExp('^' + word + '\\S*','i') + 'g';
console.log(str.search(pattern));


Хотя в переменной pattern такая же регулярка как в первом коде /^соус\S*/ig

Пробовал писать и так , но регулярка получается /^соус\S*/gi и тоже ничего не находит:
var str = 'соус острый яблоки красные кляб';
var word = 'coyc';
var pattern = new RegExp('^' + word + '\\S*','ig');
console.log(str.search(pattern));

Почему происходит перестановка ig на gi ? я в шоке если честно

Как сделать чтобы работало? помогите
Ответить с цитированием