js中几种去掉字串左右空格的方法


Posted in Javascript onDecember 25, 2006

//recon 的思路:
//-------------
//去掉字串左边的空格
function ltrim(str)
{
if (str.charat(0) == " ")
{
  //如果字串左边第一个字符为空格
  str = str.slice(1);//将空格从字串中去掉
  //这一句也可改成 str = str.substring(1, str.length);
  str = ltrim(str);   //递归调用
}
return str;
}

//去掉字串右边的空格
function rtrim(str)
{
var ilength;

ilength = str.length;
if (str.charat(ilength - 1) == " ")
{
  //如果字串右边第一个字符为空格
  str = str.slice(0, ilength - 1);//将空格从字串中去掉
  //这一句也可改成 str = str.substring(0, ilength - 1);
  str = rtrim(str);   //递归调用
}
return str;
}

//去掉字串两边的空格
function trim(str)
{
return ltrim(rtrim(str));
}

//雨天5337 的思路:
//----------------
function alltrim(a_strvarcontent)
{
  var pos1, pos2, newstring;

  pos1 = 0;
  pos2 = 0;
  newstring = ""

  if ( a_strvarcontent.length > 0 )
  {
    for( i=0; i<=a_strvarcontent.length; i++)
  //recon: 这句应该有错误,应改成:
  //for( i=0; i<a_strvarcontent.length; i++)
    {
        if ( a_strvarcontent.charat(i) == " " )
          pos1 = pos1 + 1;
        else
          break;   
    }

    for( i=a_strvarcontent.length; i>=0 ; i--)
  //recon: 这句应该有错误,应改成:
  //for( i=a_strvarcontent.length-1; i>=0 ; i--)
    {
        if ( a_strvarcontent.charat(i) == " " )
          pos2 = pos2 + 1;
        else
          break;   
    }

    newstring = a_strvarcontent.substring(pos1, a_strvarcontent.length-pos2)

}

  return newstring;

}

//hooke 的思路:
//-------------
function jtrim(sstr)
{
var astr="";
var dstr="";
var flag=0;
for (i=0;i<sstr.length;i++)
  {if ((sstr.charat(i)!=' ')||(flag!=0)) 
  {dstr+=sstr.charat(i);
  flag=1;
    }
  }
flag=0;
for (i=dstr.length-1;i>=0;i--)
  {if ((dstr.charat(i)!=' ')||(flag!=0)) 
  {astr+=dstr.charat(i);
  flag=1;
    }
  }
dstr="";
for (i=astr.length-1;i>=0;i--) dstr+=astr.charat(i);
return dstr;
}
为什么不用正则表达式?
String.prototype.Trim = function()
{
     return this.replace(/(^\s*)|(\s*$)/g, "");
}

Javascript 相关文章推荐
js一组验证函数
Dec 20 Javascript
IE6下JS动态设置图片src地址问题
Jan 08 Javascript
js操作IE浏览器弹出浏览文件夹可以返回目录路径
Jul 14 Javascript
javascript下拉框选项单击事件的例子分享
Mar 04 Javascript
javascript框架设计之种子模块
Jun 23 Javascript
connection reset by peer问题总结及解决方案
Oct 21 Javascript
javascript 初学教程及五子棋小程序的简单实现
Jul 04 Javascript
在vue中获取dom元素内容的方法
Jul 10 Javascript
webpack 2的react开发配置实例代码
Jul 28 Javascript
VueJs使用Amaze ui调整列表和内容页面
Nov 30 Javascript
微信小程序实现音频文件播放进度的实例代码
Mar 02 Javascript
解决echarts 一条柱状图显示两个值,类似进度条的问题
Jul 20 Javascript
js静态作用域的功能。
Dec 25 #Javascript
js不是基础的基础
Dec 24 #Javascript
静态的动态续篇之来点XML
Dec 23 #Javascript
脚本吧 - 幻宇工作室用到js,超强推荐expand.js
Dec 23 #Javascript
脚本吧 - 幻宇工作室用到js,超强推荐share.js
Dec 23 #Javascript
脚本吧 - 幻宇工作室用到js,超强推荐base.js
Dec 23 #Javascript
实现复选框全选/全不选切换
Dec 23 #Javascript
You might like
德生PL330的评价与改造
2021/03/02 无线电
用PHP读取RSS feed的代码
2008/08/01 PHP
php date与gmdate的获取日期的区别
2010/02/08 PHP
PHP取整数函数常用的四种方法小结
2012/07/05 PHP
PHP实现简单实用的分页类代码
2016/04/08 PHP
JavaScript 类的定义和引用 JavaScript高级培训 自定义对象
2010/04/27 Javascript
javascript动态加载三
2012/08/22 Javascript
JQuery入门—编写一个简单的JQuery应用案例
2013/01/03 Javascript
你必须知道的JavaScript 变量命名规则详解
2013/05/07 Javascript
jquery.qrcode在线生成二维码使用示例
2013/08/21 Javascript
JAVASCRIPT函数作用域和提前声明 分享
2013/08/22 Javascript
高性能JavaScript 重排与重绘(2)
2015/08/11 Javascript
javascript拖拽效果延伸学习
2016/04/04 Javascript
微信小程序 Toast自定义实例详解
2017/01/20 Javascript
实例分析nodejs模块xml2js解析xml过程中遇到的坑
2017/03/18 NodeJs
node.js中express模块创建服务器和http模块客户端发请求
2019/03/06 Javascript
vue 返回上一页,页面样式错乱的解决
2019/11/14 Javascript
React学习之JSX与react事件实例分析
2020/01/06 Javascript
JavaScript中展开运算符及应用的实例代码
2021/01/14 Javascript
python插入排序算法的实现代码
2013/11/21 Python
使用 Python 获取 Linux 系统信息的代码
2014/07/13 Python
Python中使用第三方库xlrd来读取Excel示例
2015/04/05 Python
Python基础中所出现的异常报错总结
2016/11/19 Python
Python利用operator模块实现对象的多级排序详解
2017/05/09 Python
Python中表示字符串的三种方法
2017/09/06 Python
python正则实现提取电话功能
2018/02/24 Python
对python 生成拼接xml报文的示例详解
2018/12/28 Python
对Python 两大环境管理神器 pyenv 和 virtualenv详解
2018/12/31 Python
基于python调用psutil模块过程解析
2019/12/20 Python
Python使用循环神经网络解决文本分类问题的方法详解
2020/01/16 Python
Pycharm安装并配置jupyter notebook的实现
2020/05/18 Python
css3实现顶部社会化分享按钮示例
2014/05/06 HTML / CSS
彪马加拿大官网:PUMA加拿大
2018/10/04 全球购物
导游实习生自荐书
2014/01/28 职场文书
公司开除员工通知
2015/04/22 职场文书
Java详细解析==和equals的区别
2022/04/07 Java/Android