Как сделать поиск и замену в тексте?

322
31 октября 2017, 01:08

Есть HTML текст, в котором встречаются несколько [].

Также есть массив такого вида:

[[1,2], [3,4], [5,6]]

То есть в каждый "блок" [] в тексте должен вставиться (по индексу) соответствующий массив.

Помогите, пожалуйста, реализовать это (без jquery), а то у меня ничего не выходит. Максимум чего я достиг - это получил массив "блоков" [], но никак не могу заменить их в тексте, чтобы на выходе получить исходный текст с заменой.

Answer 1

Всё просто:

let arr = [[1,2], [3,4], [5,6]], pointer = 0; 
 
let wrapper = document.querySelector('div'); 
wrapper.innerHTML = wrapper.innerHTML.replace(/\[\]/g, _ => (_ = arr[pointer].toString(), pointer++, _));
span{ 
  background: #efefef; 
  padding: 3px; 
}
<div>Это первый массив: <span>[]</span>, тут уже второй: <span>[]</span><br /> 
А это третий: <span>[]</span></div>

На будущее - старайтесь выкладывать свои наработки, а то выглядит как попрошайничество, а не просьба помочь.

READ ALSO
Асинхронный каунтер на python

Асинхронный каунтер на python

ЗдравствуйтеЕсть вот такой простой код на javascript:

259
React, Gulp. Не загружаются стили

React, Gulp. Не загружаются стили

Пишу приложение с использованием React, Node, GulpВозникла проблема с подключением стилей в компонент

279
Node.js socket.io не может подключиться к серверу

Node.js socket.io не может подключиться к серверу

Здравствуйте, делаю nodejs сервер для уведомлений и сообщений

331
Почему при прокрутке вправо/влево между страницами пустое пространство?

Почему при прокрутке вправо/влево между страницами пустое пространство?

Нужен способ сделать так, чтобы все страницы перемещались влево, вправо, вниз и вверхПеремещение вниз и вверх работает нормально, а вправо...

375