我有一个这样的字符串:
var str = 'aaaaaa, bbbbbb, ccccc, ddddddd, eeeeee ';
我的目标是删除字符串中的最后一个空格。我会用,
str.split(0,1);
但如果字符串中的最后一个字符后面没有空格,则会删除字符串的最后一个字符。
我想用
str.replace("regex",'');
我是RegEx的初学者,感谢任何帮助。
非常感谢。
答案 0 :(得分:16)
谷歌搜索“javascript trim”,你会发现许多不同的解决方案。
这是一个简单的:
trimmedstr = str.replace(/\s+$/, '');
答案 1 :(得分:6)
当您需要删除末尾的所有空格时:
str.replace(/\s*$/,'');
当您需要在末尾删除一个空格时:
str.replace(/\s?$/,'');
\s
不仅意味着空间,还意味着类似空间的角色;例如tab。
如果您使用jQuery,您还可以使用trim
功能:
str = $.trim(str);
但是trim
不仅会在字符串的末尾删除空格,也会删除空格。
答案 2 :(得分:5)
似乎您需要trimRight
功能。它直到Javascript 1.8.1才可用。在此之前,您可以使用原型技术。
String.prototype.trimRight=function(){return this.replace(/\s+$/,'');}
// Now call it on any string.
var a = "a string ";
a = a.trimRight();
详情请见Trim string in JavaScript?和兼容性list
答案 3 :(得分:3)
您可以使用此代码删除单个尾随空格:
.replace(/ $/, "");
删除所有尾随空格:
.replace(/ +$/, "");
$
匹配正常模式下的输入结束(它与多线模式中的行尾相匹配)。
答案 4 :(得分:1)
尝试正则表达式( +)$
,因为正则表达式中的$
匹配字符串的结尾。这将从字符串的末尾删除所有空格。
有些程序有strip
函数可以做同样的事情,我不相信标准的Javascript库有这个功能。
答案 5 :(得分:0)
工作示例:
var str = "Hello World ";
var ans = str.replace(/(^[\s]+|[\s]+$)/g, '');
alert(str.length+" "+ ans.length);