Using JavaScript, how can I remove the last comma, but only if the comma is the last character or if there is only white space after the comma? This is my code. I got a working fiddle. But it has a bug.
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; }
Advertisement
Answer
This will remove the last comma and any whitespace after it:
str = str.replace(/,s*$/, "");
It uses a regular expression:
The
/
mark the beginning and end of the regular expressionThe
,
matches the commaThe
s
means whitespace characters (space, tab, etc) and the*
means 0 or moreThe
$
at the end signifies the end of the string