当前位置: 首页 > 图文教程 > 网络编程 > Javascript > js中几种去掉字串左右空格的方法

Javascript
用Javascript 实现的Dual listbox
javascript中的数组应用的一点发现
我与Javascript 随笔(二)
关于IP验证的一个例子
JS中关于对内存的释放问题[待续]
用JScript实现公历到农历的日期转换
判断输入字符串为颜色类型的最优方法
日期控件还是看看这个吧
javascript版的日期输入控件
可输入的select改进版本,同一页面可有多个list,调用接口简化
数字金额转换汉字金额
关于四舍五入的问题,toFixed()
Select的OnChange()事件
关于javascript树形结构的编写问题
将人民币数字转换成大写形式
用JavaScript实现动画效果
javascript: 改变和控制显示的图片大小(保持比例,同时可限制高宽)
超强幻灯片播放脚本(VBS)
HTML页面如何象asp一样接受参数
数字日期转化为汉字日期格式...

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 128 ::
收藏到网摘: n/a

//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, "");
}