Обратный indexOf js

Есть строка " контент ". Мне нужно получить позицию пробелов возле слова "контент". Справа это сделать очень просто:

id = сюда передается позиция каретки;
if(строка.indexOf(' ', id) !== -1){
    id = строка.indexOf(' ', id);
} else строка.length;

Но как получить тот, что слева?

P.s.: Будет много слов и при клике на одно из них надо получить позицию пробела слева и справа. Позицию клика я получить могу, а вот пробела слева - нет.


Ответы (1 шт):

Автор решения: Qwertiy

var s = "Есть строка  контент    . Мне нужно"
var m = s.match(/( +)(контент)( +)/)

console.log(m && {
  "Начало пробелов слева": m.index,
  "Количество пробелов слева": m[1].length,
  "Начало пробелов справа": m.index + m[1].length + m[2].length,
  "Количество пробелов справа": m[3].length,
})

→ Ссылка