Letztes Komma aus einer Zeichenfolge entfernen

Lesezeit: 3 Minuten

Letztes Komma aus einer Zeichenfolge entfernen
Ana Maria

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 Arbeit 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;
}

  • Sollen auch die Leerzeichen am Ende entfernt werden?

    – Felix Kling

    18. Juli ’13 um 10:01

  • wenn es nur ein Leerzeichen ist, ja

    – Ana Maria

    18. Juli ’13 um 10:01

  • Wie wäre es mit Leerzeichen vor dem betreffenden Komma? Sollen diese auch entfernt werden? in diesem Fall: str = str.replace(/,s*$/, “”); würde zu str = str.replace(/s*,s*$/, “”);

    – Amitabh

    13. Dezember ’16 um 1:30


Dadurch werden das letzte Komma und alle Leerzeichen danach entfernt:

str = str.replace(/,s*$/, "");

Es verwendet einen regulären Ausdruck:

  • Der / markiert den Anfang und das Ende des regulären Ausdrucks

  • Der , stimmt mit dem Komma überein

  • Der s bedeutet Leerzeichen (Leerzeichen, Tabulator usw.) und die * bedeutet 0 oder mehr

  • Der $ am Ende bedeutet das Ende der Zeichenfolge

  • Verwenden Sie str.replace(/,+/g,”,”).replace(/(,s*$)|(^,*)/, “”); Wenn Sie das anfängliche leere Komma oder Doppelkomma entfernen möchten, würde aus “,,8,7” beispielsweise “8,7” werden

    – Miguel

    24. August ’17 um 15:22


  • @ParkashKumar Jon hat bereits über das letzte gesprochen /. The / mark the beginning and end of the regular expression.

    – Asif Ali

    13. Dezember ’17 um 10:11


  • Sehr nützlich Danke.

    – Alok Ranjan

    9. Juli ’20 um 10:19

1641736642 666 Letztes Komma aus einer Zeichenfolge entfernen
e-techpulse

Sie können das letzte Komma aus einer Zeichenfolge entfernen, indem Sie die Methode Slice () verwenden, finden Sie unten Beispiel:

var strVal = $.trim($('.txtValue').val());
var lastChar = strVal.slice(-1);
if (lastChar == ',') {
    strVal = strVal.slice(0, -1);
}

Hier ist ein Beispiel

function myFunction() {
	var strVal = $.trim($('.txtValue').text());
	var lastChar = strVal.slice(-1);
	if (lastChar == ',') { // check last character is string
		strVal = strVal.slice(0, -1); // trim last character
		$("#demo").text(strVal);
	}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<p class="txtValue">Striing with Commma,</p>

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

function removeLastComma(str) {
   return str.replace(/,(s+)?$/, '');   
}

Letztes Komma aus einer Zeichenfolge entfernen
Booboo

Die stark positive Antwort entfernt nicht nur das letzte Komma, sondern auch alle darauf folgenden Leerzeichen. Aber das Entfernen der folgenden Leerzeichen war nicht was war Teil des ursprünglichen Problems. So:

let str="abc,def,ghi, ";
let str2 = str.replace(/,(?=s*$)/, '');
alert("'" + str2 + "'");
'abc,def,ghi '

https://jsfiddle.net/dc8moa3k/

1641736642 427 Letztes Komma aus einer Zeichenfolge entfernen
Komal

Falls es nützlich oder besser ist:

str = str.replace(/(s*,?s*)*$/, "");

Es ersetzt alle folgenden Kombinationsenden der Zeichenfolge:

1. ,<no space>
2. ,<spaces> 
3. ,  ,  , ,   ,
4. <spaces>
5. <spaces>,
6. <spaces>,<spaces>

lange geschossen hier

var sentence="I got,. commas, here,";
var pattern=/,/g;
var currentIndex;
while (pattern.test(sentence)==true)  {    
  currentIndex=pattern.lastIndex;
 }
if(currentIndex==sentence.trim().length)
alert(sentence.substring(0,currentIndex-1));
else
 alert(sentence);

1641736642 335 Letztes Komma aus einer Zeichenfolge entfernen
Deepu Reghunath

Letztes Komma entfernen. Arbeitsbeispiel

function truncateText() {
  var str= document.getElementById('input').value;
  str = str.replace(/,s*$/, "");
  console.log(str);
}
<input id="input" value="address line one,"/>
<button onclick="truncateText()">Truncate</button>

.

215570cookie-checkLetztes Komma aus einer Zeichenfolge entfernen

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy