Comment utilisez-vous les variables correspondantes dans le motif de la chaîne de remplacement?
var regexp = new RegExp('needle', 'ig'); str.replace(regexp, '<span class="marked">//1</span>')
essayer
var regexp = new RegExp(something, 'ig'); str.replace(regexp, '<span class="marked">$&</span>')
Les références:
Une table spécifiant le format des différents jetons à utiliser dans la chaîne de remplacement
Un exemple sur la façon de passer deux mots dans une chaîne
La bonne façon d'utiliser les backreferences dans JavaScript est via $1
… $9
.
Pour que votre exemple fonctionne:
var regexp = new RegExp(something, 'ig'); var result = str.replace(regexp, '<span class="marked">$1</span>');
Plus d'informations sont disponibles ici: http://www.regular-expressions.info/javascript.html#replace