2017-04-26 3 views
0

ich habe eine Zeichenfolge mit Sub-String '5+'jquery Ersetzen-Funktion mit '+'

String aussieht Umsatz/100/5 + i den Sub-String 5+ mit weißen Raum

entfernen muß

Eingang: Umsatz/100/5 +

Ausgang: Umsatz/100

die jquery Skript ist hier

var rstring = 'sales/100/5+'; 
if((splitStr == '5+')||(splitStr == '4-')) 
     { var key = rstring.replace(new RegExp('/'+splitStr, 'g'),""); 
     alert(key); 
     } 

jetzt im das Ergebnis bekommen: Umsatz/100 + gewünschte Ausgabe: Umsatz/100

+0

Soll der zu ersetzende Teil immer "5+"/"4-" sein oder wird der Teil nach dem letzten "/" ?? –

Antwort

1

Um dies zu erreichen Sie die Zeichenfolge von /split() kann, das letzte Element entfernen, dann join() es wieder zusammen, wie folgt aus:

var arr = 'sales/100/5+'.split('/'); 
 
arr.pop(); 
 

 
console.log(arr.join('/'));

0

können Sie /5+ von bestimmten Strings entfernen. Kein jQuery-Code ist notwendig, nur eine einfache JS-Funktion.

function replace5plus(str) { 
    return str.replace('/5+', ''); 
} 
1

Sie nicht wirklich brauchen eine Regex zu verwenden, um Ihre Zeichenfolge ersetzen Arbeit

die einfachste das Beste zu machen:

var rstring = 'sales/100/5+'; 
    if((splitStr == '5+')||(splitStr == '4-')) 
    { 
     var key = rstring.replace('/' + splitStr, ''); 
     alert(key); 
    } 

die '+' in Ihrer Regex ist ein Quantor. Es passt so oft wie möglich zwischen einem und unbegrenzten Zeiten und gibt es nach Bedarf zurück. Deshalb war Ihr + immer noch nach Ihrer Ersetzung.