js去字符串前后空格的实现方法

当我们进行一些页面编辑时,字符串前后的空格,通常是无效的。因此需要在获取信息时,进行过滤。

比如:

  输入:[空格][空格]a[空格]b[空格][空格][空格]

  得到:a[空格]b

代码如下:
去掉前面的空格

function LTrim(str){
  var i;
  for(i=0;i<str.length;i++){
    if(str.charAt(i)!=" ")
      break;
  }
  str = str.substring(i,str.length);
  return str;
}

去掉后面的空格

function RTrim(str){
  var i;
  for(i=str.length-1;i>=0;i--){
    if(str.charAt(i)!=" ")
      break;
  }
  str = str.substring(0,i+1);
  return str;
}

使用方法

function Trim(str){
   return LTrim(RTrim(str));
 }

【推荐】使用正则的方式

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

String.prototype.LTrim = function(){
  return this.replace(/(^\s*)/g, "");
} 

String.prototype.RTrim = function(){
  return this.replace(/(\s*$)/g, "");
}

补充一些其他方法:

第一种:循环检查替换

//供使用者调用
function trim(s){
return trimRight(trimLeft(s));
}
//去掉左边的空白
function trimLeft(s){
if(s == null) {
return "";
}
var whitespace = new String(" \t\n\r");
var str = new String(s);
if (whitespace.indexOf(str.charAt(0)) != -1) {
var j=0, i = str.length;
while (j < i && whitespace.indexOf(str.charAt(j)) != -1){
j++;
}
str = str.substring(j, i);
}
return str;
}
//去掉右边的空白 www.jb51.net
function trimRight(s){
if(s == null) return "";
var whitespace = new String(" \t\n\r");
var str = new String(s);
if (whitespace.indexOf(str.charAt(str.length-1)) != -1){
var i = str.length - 1;
while (i >= 0 && whitespace.indexOf(str.charAt(i)) != -1){
i--;
}
str = str.substring(0, i+1);
}
return str;
}

第二种:裁剪字符串方式

function trim(str){
str = str.replace(/^(\s|\u00A0)+/,'');
for(var i=str.length-1; i>=0; i--){
if(/\S/.test(str.charAt(i))){
str = str.substring(0, i+1);
break;
}
}
return str;
}

以上就是js去字符串前后空格的多种方法,希望对大家的学习有所帮助。

(0)

相关推荐

  • 如何用javascript去掉字符串里的所有空格

    这个好像只能去掉2头的空格 复制代码 代码如下: String.prototype.trim=function   (){return   this.replace(/(^\s*)|(\s*$)/g,'');} 方法1: 复制代码 代码如下: String.prototype.mm   =   function   (){return   this.replace(/\s/g,   '');} 方法2: 复制代码 代码如下: var   s   =   "asd   ddd   bbb   ss

  • JS去除字符串中空格的方法

    本文实例讲述了JS去除字符串中空格的方法.分享给大家供大家参考,具体如下: 去掉字符串中的所有空格,不仅仅包含前后空格: text = text.replace(/\s/ig,''); 去掉前后空格: 第一种方法: 使用trim() function Trim(m){ while((m.length>0)&&(m.charAt(0)==' ')) m = m.substring(1, m.length); while((m.length>0)&&(m.charA

  • JS使用正则实现去掉字符串左右空格的方法

    本文实例讲述了JS使用正则实现去掉字符串左右空格的方法.分享给大家供大家参考,具体如下: //去掉左空格 function ltrim(s) { return s.replace(/^/s*/, ""); } //去掉右空格 function rtrim(s) { return s.replace(//s*$/, ""); } //去掉左右空格 function trim(s) { return rtrim(ltrim(s)); } PS:这里再为大家提供2款非常方

  • js去字符串前后空格5种实现方法及比较

    我们在项目中如果写到注册的时候,用户输入空格,我们怎么来剔除空格呢? 下面是我经常用到的js与大家分享下: 第一种:循环检查替换 [javascript] 复制代码 代码如下: //供使用者调用 function trim(s){ return trimRight(trimLeft(s)); } //去掉左边的空白 function trimLeft(s){ if(s == null) { return ""; } var whitespace = new String("

  • JS去除字符串两端空格的简单实例

    //去左空格;function ltrim(s){ return s.replace(/(^s*)/g, "");}//去右空格;function rtrim(s){return s.replace(/(s*$)/g, "");}//去左右空格;function trim(s){return s.replace(/(^s*)|(s*$)/g, "");}

  • Js 去掉字符串中的空格(实现代码)

    1. 去掉字符串两端的空格 String.prototype.trim=function (){return this.replace(/(^/s*)|(/s*$)/g,'');} 2. 去掉字符串中所有的空格: String.prototype.sTrim = function (){return this.replace(//s/g, '');} 或者: var s = "asd ddd bbb sss";var reg = //s/g;var ss = s.replace(reg

  • javascript去除字符串左右两端的空格

    去除字符串左右两端的空格,在vbscript里面可以轻松地使用 trim.ltrim 或 rtrim,但在js中却没有这3个内置方法,需要手工编写.下面的实现方法是用到了正则表达式,效率不错,并把这三个方法加入String对象的内置方法中去. 写成类的方法格式如下:(str.trim();) 复制代码 代码如下: <script language="javascript"> String.prototype.trim=function(){    return this.r

  • JavaScript trim 去除字符串空格的三种方法(附代码详解)

    方法一: 正则替换 推荐个人认为最好的方法.采用的是正则表达式,这是最核心的原理. 下面是代码原文 复制代码 代码如下: <SCRIPT LANGUAGE="JavaScript"> <!-- //出处:网上搜集 //For more visit http://www.jb51.net // Trim() , Ltrim() , RTrim() String.prototype.Trim = function() { return this.replace(/(^\s

  • js 去掉字符串前后空格实现代码集合

    第一种:循环检查替换 //供使用者调用 function trim(s){ return trimRight(trimLeft(s)); } //去掉左边的空白 function trimLeft(s){ if(s == null) { return ""; } var whitespace = new String(" \t\n\r"); var str = new String(s); if (whitespace.indexOf(str.charAt(0))

  • js去空格技巧分别去字符串前后、左右空格

    分别去字符串前后,左边,右边空格 复制代码 代码如下: String.prototype.trim = function(){ return this.replace(/^\s+|\s+$/g,"")} String.prototype.ltrim = function(){ return this.replace(/^\s+/g,"")} String.prototype.rtrim = function(){ return this.replace(/\s+$/

  • javascript 去字符串空格终极版(支持utf8)

    其实这个问题是:如果你的js本身是unicode编码,那么用正则表达式\s就可以去掉所有空白,但是如果你js是utf-8编码,那么正则就不能处理编码为160的空格了. 下面我先是正则表达式去掉编码为32的空格,再用递归的方法去掉字符串两边的unicode空格. 复制代码 代码如下: /** 去字符两端空格 开始 *@author 敖士伟 *@version v1.0 *@date 2009/11/14 22:51 */ String.prototype.trim = function() { v

  • JS去掉字符串前后空格或去掉所有空格的用法

    1.  去掉字符串前后所有空格: 代码如下: 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.repla

  • JS去除字符串的空格增强版(可以去除中间的空格)

    javascript trim 去空格函数实现代码http://www.jb51.net/article/16250.htm 下面是增强版本 复制代码 代码如下: // 功能: 1)去除字符串前后所有空格 // 2)去除字符串中所有空格(包括中间空格,需要设置第2个参数为:g) function Trim(str,is_global) { var result; result = str.replace(/(^\s+)|(\s+$)/g,""); if(is_global.toLowe

随机推荐