2016-07-25 10 views
0

Ich habe eine Zeichenfolge definiert als:JQuery Regex Parsing

example = bob_kong_24_male_1234 

Verwendung der geringsten Menge von Linien möglich, wie kann ich überprüfen, ob das letzte Bit (das ‚1234‘ aus der Zeichenfolge) von Informationen für eine ganze Zahl und wenn es eine ganze Zahl ist, entferne es aus der Zeichenkette. Das Ergebnis wäre:

Beachten Sie, dass es andere Ganzzahlen in der Zeichenfolge geben kann, so dass Dinge kompliziert werden können.

Meine aktuelle Lösung beinhaltet die Teilung der Zeichenfolge in ein Array mit dem '_' als Trennzeichen. Dann überprüfe ich, ob das letzte Element eine Ganzzahl ist oder nicht, und wenn dies der Fall ist, entferne es aus der ursprünglichen Zeichenkette. Aber ich fühle, dass eine schnellere/einfachere Lösung existiert.

+0

Wenn die ganze Zahl entfernt wird. – nicael

Antwort

0

Sie könnten das auch mit Regex tun.

var example = "bob_kong_24_male_1234"; 
 
example = example.replace(/\d+$/, ""); 
 
console.log(example)

, dass das letzte Zeichen wird entfernen regex, wenn sie Ziffern sind. das Ergebnis wäre `bob_kong_24_male_`, mit dem Unterstrich am Ende

Wenn das Ziel, die Unterstreichungs zusammen zu entfernen ist, wird die Regex

geändert
/_\d+$/