webentwicklung-frage-antwort-db.com.de

Regex zum Entfernen des letzten/wenn es als letztes Zeichen in der Zeichenfolge vorhanden ist

Ich möchte, dass ein regulärer Ausdruck oder eine andere Methode das letzte Zeichen in einer Zeichenfolge entfernt, und zwar nur dann, wenn dieses Zeichen '/' ist. Wie kann ich es tun?

20
P.Brian.Mackey
string = string.replace(/\/$/, "");

$ markiert das Ende einer Zeichenfolge. \/ ist ein von RegExp geschütztes /. Beides kombinieren = Ersetzen Sie den / am Ende einer Zeile.

59
Rob W

Nur um eine Alternative zu geben:

var str="abc/";
str.substring(0, str.length - +(str.lastIndexOf('/')==str.length-1)); // abc

var str="aabb";
str.substring(0, str.length - +(str.lastIndexOf('/')==str.length-1)); // aabb

Dies spielt die Tatsache ab, dass Number(true) === 1 und Number(false) === 0

5
Joe
var str = "example/";
str = str.replace(/\/$/, '');
2
megaflop
var str = //something;
if(str[str.length-1] === "/") {
    str = str.substring(0, str.length-1);
}
1
Dennis
var t = "example/";
t.replace(/\/$/, ""));
1
Larsenal

Dies ist kein Regex, könnte aber Ihr Problem lösen

var str = "abc/";

if(str.slice(-1) == "/"){
str = str.slice(0,-1)+ "";
}
0
Chandrakant
$('#ssn1').keyup(function() {
      var val = this.value.replace(/\D/g, '');
      val = val.substr(0,9)
      val = val.substr(0,3)+'-'+val.substr(3,2)+'-'+val.substr(5,4)
      val = val.replace('--','').replace(/-$/g,'')
      this.value = val;
});
0
Metafr