Warum letzte UND wird nicht entfernt/ersetzt?Javascript string ersetzen letzte ocrence
obj.where_str ="CD_MAQ LIKE '%AA%' AND";
obj.where_str = $.trim(obj.where_str).replace(obj.where_str.lastIndexOf("AND"), " ");
Danke.
Warum letzte UND wird nicht entfernt/ersetzt?Javascript string ersetzen letzte ocrence
obj.where_str ="CD_MAQ LIKE '%AA%' AND";
obj.where_str = $.trim(obj.where_str).replace(obj.where_str.lastIndexOf("AND"), " ");
Danke.
Warum das letzte UND wird nicht entfernt/ersetzt?
Weil Sie versuchen, die Ausgabe von lastIndexOf
zu ersetzen, die ein integer
Verwenden replace
mit regex
obj.where_str = obj.where_str.replace(/(AND)\s*$/, "")
/(AND)\s*$/
ersetzt UND nahe dem Ende des Strings kann (oder nicht) gefolgt von Leerzeichen.
Sie können dies tun:
var obj = {};
obj.where_str ="CD_MAQ LIKE '%AA%' AND";
var lastIndex = obj.where_str.lastIndexOf(" ");
obj.where_str = $.trim(obj.where_str.substring(0, lastIndex));
console.log(obj.where_str);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
lastIndexOf()
liefert einen Index.
könnten Sie diesen Index verwenden, um die Teilkette, in dem Sie auswählen möchten diesen Dank
str.substr(0, str.lastIndexOf("AND")) + "" + str.substr(str.lastIndexOf("AND") + "".length)
so etwas wie geben
"AND"
Würde ersetzen. Und wenn ich etwas für den Anfang machen möchte? –
Sie meinen UND am Anfang? Sie können entweder '.replace (/^(AND) /," ")' verwenden, wobei '/ ^' den Anfang der Zeichenfolge bestätigt. Oder einfach '.trim(). Substring (3)' wird reichen. – gurvinder372
danke .... perfekt –