2016-04-21 17 views
-2

Ich muss Nummer in Javascript finden und durch Wert ersetzen, der von dieser Nummer abhängt.Regex finden und ersetzen mit geändertem Inhalt

Quelle string:

abc20.0xxxxxx30xxx 

Regex hat doppelt zu finden, teilen Sie es mit 5 und den Wert ersetzen.

Erwartetes Ergebnis sollte wie folgt aussehen:

abc4.0xxxxxx6.0xxx 

Wirklich dank

+0

Beschädigen Sie Ihre Posts nicht. Sie haben die Möglichkeit, Ihren eigenen Beitrag zu löschen. – excaza

+0

wo? Ich will nicht Hilfe von Leuten wie Jan – Jou

+0

^^ Nun können andere Leute Ihnen noch helfen. – Bijan

Antwort

-1

Hier ist, wie Sie es tun können:

function divideByFive(s) { 
 
    return s.replace(/-?\d+(\.\d+)?/g, function (a) { 
 
     a = parseFloat(a)/5; 
 
     return a.toFixed(1); 
 
    }); 
 
} 
 

 

 
// I/O 
 

 
var inp = document.querySelector('input'); 
 
var div = document.querySelector('div'); 
 

 
inp.oninput = function() { 
 
    // Get input 
 
    var s = inp.value; 
 
    // Transform 
 
    var res = divideByFive(s); 
 
    // Output 
 
    div.textContent = res; 
 
} 
 

 
inp.oninput();
<input value="abc20.0xxxxxx30xxx"> 
 
<div></div>

Führen Sie einfach das obige Snippet Sehen Sie, wie diese Funktion das tex transformiert t während Sie tippen. Die replace Methode wird mit einem regulären Ausdruck und einer call back function verwendet, die für jede Übereinstimmung aufgerufen wird

+0

toll .. thx, wirklich hilfreich (y) – Jou

+0

Schön zu hören, dass Sie es zu schätzen wissen! – trincot