Ich habe eine Benutzereingabe, wo Benutzer Preis von etwas bearbeiten können. Um Daten zu erhalten, möchte ich mit dieser Zeichenfolge auf der Front-End-Site arbeiten.Regex, um nicht dezimale Zahl dezimal zu machen (add. 00)
Was ich tun möchte, ist:
1234 to 1234.00
12.3 to 12.30
12,3 to 12.30
1234.45 to 1234.45
Also im Grunde,
Komma Ersetzen mit Punkten dies sollte wie mit somehing leicht geschehen:
str.replace(',', '.');
Fügen Sie Punkte hinzu, wenn Zahl, wenn nicht Dezimal, und ändern Sie immer auch die Anzahl der Ziffern auf zwei (so 0 hinzufügen, wenn erforderlich) ich versuche, wie etwas zu tun:
priceByUser = priceByUser.replace(/^\d*\.?\d*$/, "$1\.00");
leider wirklich dieses nicht selbst arbeiten, wie ich erwartet hatte.
Gibt es eine Chance, dass jemand mir helfen kann, dieses Problem zu lösen? Dank
Sind Sie sicher '123,45 bis 1234.45'? –
Hallo @ WiktorStribiżew, danke für diesen Punkt. Du hast recht, ich will nicht, sorry dafür, dass es ein Tippfehler war. Schon in Frage geändert. – Andurit
Dies mag eine faule Lösung sein, aber Sie könnten einfach 0,00 zu jeder Zahl hinzufügen, die Sie mit '[0-9] +' finden. * Nach *, dass Sie nach Zahlen mit zwei Vorkommen von Dezimaltrennzeichen suchen können - '[0-9] + (\. |,) [0-9] + \. 00' - und entfernen Sie die letzten drei Zeichen. – Renan