Regexp js, получить строку между тегов

Помогите пожалуйста получить строку между тегов. Дело в том, что я не могу вставить теги полностью (с открывающими и закрывающими символами), получается ошибка что это не функция. Как я могу преодолеть это?

function getText(str) {
let results = [],
re = /h1([^}]+)h1/g, text;
while (text = re.exec(str)) {
results.push(text[1]);
 }
return results;
}
console.log(getText("<h1>eqweqeeqweqqwe </h1> "))

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

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

function getText(s) {
  var res = []
  
  s.replace(/<h1\b[^>]*>((?:(?!<\/h1\s*>).)*)/g, (m, t) => {
    res.push(t)
  })
  
  return res
}

console.log(getText(`
  <h1>eqweqeeqweqqwe </h1> 
  <h1 class="q">qwe</h1 ><h1>qqq</h1>
  <h11>nope</h11>
`))

→ Ссылка