(网页)JS去掉字符串前后空格或去掉所有空格的用法(转)

转自脚本之家:

这篇文章主要介绍了JS去掉字符串前后空格或去掉所有空格的用法,需要的朋友可以参考下:

代码如下:

function Trim(str)
{
return str.replace(/(^\s*)|(\s*$)/g, "");
}

说明:

如果使用jQuery直接使用$.trim(str)方法即可,str表示要去掉前后所有空格的字符串。

 2、 去掉字符串中所有空格(包括中间空格,需要设置第2个参数为:g)

function Trim(str,is_global)
{
var result;
result = str.replace(/(^\s+)|(\s+$)/g,"");
if(is_global.toLowerCase()=="g")
{
result = result.replace(/\s/g,"");
}
return result;
}

  3、现在大部分浏览器中基本上都支持字符串的 trim 函数,但是为了兼容不支持的浏览器,我们最好还是在 Js 文件中加入以下代码(不需要清除换行符的请删除 \n 制表符删除 \t):

  

if (!String.prototype.trim) {

 /*---------------------------------------
* 清除字符串两端空格,包含换行符、制表符
*---------------------------------------*/
String.prototype.trim = function () {
return this.triml().trimr();
} /*----------------------------------------
* 清除字符串左侧空格,包含换行符、制表符
* ---------------------------------------*/
String.prototype.triml = function () {
return this.replace(/^[\s\n\t]+/g, "");
} /*----------------------------------------
* 清除字符串右侧空格,包含换行符、制表符
*----------------------------------------*/
String.prototype.trimr = function () {
return this.replace(/[\s\n\t]+$/g, "");
}
}

  如果只需要 trim 函数的,可以只写一个:

if (!String.prototype.trim){

 /*---------------------------------------
* 清除字符串两端空格,包含换行符、制表符
*---------------------------------------*/
String.prototype.trim = function () {
return this.replace(/(^[\s\n\t]+|[\s\n\t]+$)/g, "");
} }

  使用代码:

var str = " abcd ".trim();

  起因:我准备找一个js去除空格的简便方法,翻阅文档惊奇的发现没有,w3cschool的javascript文档.准备Google一下.发现还有经常碰到JQuery里的trim()函数在firefox支持,但是在IE里不支持这么一回事.其主要原因是写法不对,下面是错误的写法

var content = $('#content').val();    

if(content.trim() == '') {

  alert('空');    

}

上面的写法在firefox下不会报错,但在ie下确会报错
正确的写法应该为

var content = $('#content').val();    

if($.trim(content) == '')  {

  alert('空');  

}

var content = $('#content').val();    

if(jQuery.trim(content) == '') {

  alert('空');  

}

  一个小问题,还是自己准备一个解决这些琐事问题的小型的工具js,比较好.模糊查询没去除空格,想在前端搞下。

 

原文地址:http://www.jb51.net/article/109522.htm

上一篇:详解HASH(字符串哈希)


下一篇:去掉字符串中的空格 JS JQ 正则三种不同写法