Javascript substituir com referência ao grupo correspondente?
Eu tenho uma string, comohello _there_
. Eu gostaria de substituir os dois sublinhados por<div>
e</div>
respectivamente, usandoJavaScript. A saída seria (portanto) parecida comhello <div>there</div>
. A cadeia pode conter vários pares de sublinhados.
O que estou procurando é uma maneira deou execute uma função em cada partida, da mesma maneira que o Ruby faz:
"hello _there_".gsub(/_.*?_/) { |m| "<div>" + m[1..-2] + "</div>" }
Ou ser capaz de referenciar um grupo correspondente, mais uma vez da maneira que pode ser feito em ruby:
"hello _there_".gsub(/_(.*?)_/, "<div>\\1</div>")
Alguma idéia ou sugestão?