Wie kann ich mit JavaScript das letzte Komma entfernen, aber nur, wenn das Komma das letzte Zeichen ist oder wenn nach dem Komma nur Leerzeichen stehen? Das ist mein Code. Ich habe eine funktionierende Geige . Aber es hat einen Fehler.
var str = 'This, is a test.';
alert( removeLastComma(str) ); // should remain unchanged
var str = 'This, is a test,';
alert( removeLastComma(str) ); // should remove the last comma
var str = 'This is a test, ';
alert( removeLastComma(str) ); // should remove the last comma
function removeLastComma(strng){
var n=strng.lastIndexOf(",");
var a=strng.substring(0,n)
return a;
}
javascript
Ana Maria
quelle
quelle
Antworten:
Dadurch werden das letzte Komma und alle Leerzeichen danach entfernt:
Es wird ein regulärer Ausdruck verwendet:
Die
/
Markierung der Anfang und das Ende des regulären AusdrucksDas
,
entspricht dem KommaDas
\s
bedeutet Leerzeichen (Leerzeichen, Tabulator usw.) und das*
Mittel 0 oder mehrDas
$
am Ende kennzeichnet das Ende der Zeichenfolgequelle
/
.The / mark the beginning and end of the regular expression
.Sie können das letzte Komma mithilfe der Slice () -Methode aus einer Zeichenfolge entfernen. Das folgende Beispiel finden Sie hier :
Hier ist ein Beispiel
quelle
quelle
langer Schuss hier
quelle
Die stark positiv bewertete Antwort entfernt nicht nur das letzte Komma, sondern auch alle nachfolgenden Leerzeichen. Das Entfernen der folgenden Leerzeichen war jedoch nicht Teil des ursprünglichen Problems. So:
https://jsfiddle.net/dc8moa3k/
quelle
Das Problem ist, dass Sie das letzte Komma in der Zeichenfolge entfernen, nicht das Komma, wenn es das letzte in der Zeichenfolge ist. Sie sollten also ein if setzen, um zu überprüfen, ob das letzte Zeichen '' ist, und es ändern, wenn es ist.
EDIT: Ist es wirklich so verwirrend?
'Dies ist eine zufällige Zeichenfolge'
Ihr Code findet das letzte Komma aus der Zeichenfolge und speichert nur "Dies", da das letzte Komma nach "Dies" nicht am Ende der Zeichenfolge steht.
quelle
Sie können das letzte Komma entfernen:
quelle
Letztes Komma entfernen. Arbeitsbeispiel
quelle
Zunächst sollte geprüft werden, ob das letzte Zeichen ein Komma ist. Wenn es existiert, entfernen Sie es.
HINWEIS str.indexOf ( ' ' this.length -.', 'Länge) auf str.indexOf vereinfacht werden (',', this.length - 1)
quelle