如何从字符串中剥离前导和尾随空格?

例如,“dog”应该变成“dog”。


当前回答

对于jquery用户,$.trim(s)怎么样?

其他回答

用这个:

if(typeof(String.prototype.trim) === "undefined")
{
    String.prototype.trim = function() 
    {
        return String(this).replace(/^\s+|\s+$/g, '');
    };
}

trim函数现在可以作为字符串的一级函数使用。例如:

" dog".trim() === "dog" //true

编辑:采纳了J-P的建议,将正则表达式模式合并为一个。还根据Christoph的建议添加了全局修饰语。

采用了Matthew Crumley关于在重新创建trim函数之前嗅探它的想法。这是在客户端上使用的JavaScript版本较新的情况下完成的,因此有自己的本机修剪函数。

这是我使用的函数。

function trim(s){ 
  return ( s || '' ).replace( /^\s+|\s+$/g, '' ); 
}

Steven Levithan曾经写过关于如何实现一个更快的JavaScript Trim。绝对值得一看。

如果你已经在使用jQuery,那么你可能想看看jQuery.trim(),它已经提供给jQuery了。

对于jquery用户,$.trim(s)怎么样?