Ziemlich einfache Frage: Gibt es eine Möglichkeit, arithmetische Operation auf einer übereinstimmenden Gruppe in Regex in JS durchzuführen.arithmetische Operation auf Regex-Gruppe Javascript
Ex: Ich habe string:
<img style="top:200">
Ich möchte von 5 was auch immer Nummer 200 oder ersetzen durch Division, die 40 in diesem Fall wäre. So Ausgabe:
<img style="top:40">
Ich habe versucht:
var d= c.replace(/top:([-]?\d*[\.]?\d*)/,'int:'+parseInt($1/5)+'px')
Aber ich bekomme
<img style="top:NaNpx">
Warum würden Sie verwenden regex HTML und CSS zu analysieren? – adeneo
In diesem Fall ist es ein gut definierter Text, der nicht zu viele Probleme darstellen sollte. Es ist nicht so, als würde er versuchen, einen ganzen HTML-Syntaxbaum zu parsen. –
Verwenden Sie einen Callback mit der Methode replace 'var c = ''; var d = c.replace (/ top: ([-]? \ D * [\.]? \ D *) /, Funktion (m, m1) { return 'top:' + m1/5 + ' px '; }); '..... aber es ist eine schlechte Idee, Regex zum Parsen von HTML zu verwenden –