mit anderen String ersetzen habe ich eine Zeichenfolge einige HTML-Markup contaning, wie folgt aus:javascript regex - jedes Spiel gegebener Ausdruck
var html = "<div>
<img src="http://test.com/image1.png" />
<h1>SOME TEXT</h1>
<img src="http://text.com/image2.jpg" />
</div>";
ich alle URLs in src="..."
ersetzen wollen es in Ordnung ist, wenn i do html = html.replace(/[^-]src\=["|'](.*?)['|"]/g, "SOME_URL");
dann all src="..."
src="SOME_URL"
worden Aber jetzt will ich jedes Spiel mit einer anderen Zeichenfolge ersetzen, von einem genommen n Array, aber ich habe Probleme damit.
Ich denke, ich muss eine Funktion für den Ersatz verwenden, aber nicht sicher, wie Sie es implementieren.
Etwas wie:
html = html.replace(/[^-]src\=["|'](.*?)['|"]/g, function ($0, $1){ //what do i do here??? });
Also, wenn ich habe:
var arr = [];
arr['http://test.com/image1.jpg']='file1';
arr['http://test.com/test.jpg']='file3';
der String html von oben wird geworden:
"<div>
<img src="file1" />
<h1>SOME TEXT</h1>
<img src="http://text.com/image2.jpg" />
</div>"
Beachten Sie, dass ‚http://text.com /image2.jpg 'ist kein Schlüssel des Arrays, daher wird es nicht ersetzt.
Jede Hilfe geschätzt, danke im Voraus.
Einfach perfekt! Ich dachte mir, ich sollte etwas hinein geben (zB $ 0 = arr [$ 1];), hätte an die Rückkehr denken sollen ... Danke, Fabrizio, habe meinen Tag gerettet! – CrisDeBlonde
froh, nützlich zu sein. – fcalderan