我有一个这样的字符串:
var str = 'aaaaaa, bbbbbb, ccccc, ddddddd, eeeeee ';
我的目标是删除字符串中的最后一个空格。我会用,
str.split(0,1);
但是如果字符串的最后一个字符之后没有空格,这将删除字符串的最后一个字符。
我想用
str.replace("regex",'');
我是 RegEx 的初学者,不胜感激。
非常感谢你。
我有一个这样的字符串:
var str = 'aaaaaa, bbbbbb, ccccc, ddddddd, eeeeee ';
我的目标是删除字符串中的最后一个空格。我会用,
str.split(0,1);
但是如果字符串的最后一个字符之后没有空格,这将删除字符串的最后一个字符。
我想用
str.replace("regex",'');
我是 RegEx 的初学者,不胜感激。
非常感谢你。
谷歌搜索“javascript trim”,你会发现许多不同的解决方案。
这是一个简单的:
trimmedstr = str.replace(/\s+$/, '');
当您需要删除最后的所有空格时:
str.replace(/\s*$/,'');
当您需要在末尾删除一个空格时:
str.replace(/\s?$/,'');
\s
不仅表示空格,还表示类似空格的字符;例如选项卡。
如果你使用 jQuery,你也可以使用这个trim
函数:
str = $.trim(str);
但是trim
不仅在字符串的末尾删除空格,还在开头也删除了空格。
您可以使用此代码删除单个尾随空格:
.replace(/ $/, "");
要删除所有尾随空格:
.replace(/ +$/, "");
匹配正常模式下的$
输入结尾(它匹配多行模式下的行尾)。
尝试正则表达式( +)$
,因为$
in 正则表达式匹配字符串的结尾。这将删除字符串末尾的所有空格。
有些程序有一个strip
功能可以做同样的事情,我不相信标准的 Javascript 库有这个功能。
工作示例:
var str = "Hello World ";
var ans = str.replace(/(^[\s]+|[\s]+$)/g, '');
alert(str.length+" "+ ans.length);
该trimEnd()
功能正是为此而生的!
它将删除字符串末尾的所有空格(包括空格、制表符、换行符)。
根据官方文档,每个主流浏览器都支持它。只有 IE 不受支持。(说实话,你不应该关心 IE,因为微软本身已经在 2021 年 8 月放弃了对 IE的支持!)