javaScript 删除字符串空格多种方法小结
// 去掉字符串的头空格(左空格)
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));
}
function Jtrim(str)
{
var i = 0;
var len = str.length;
if ( str == "" ) return( str );
j = len -1;
flagbegin = true;
flagend = true;
while (( flagbegin == true) && (i< len))
{
if ( str.charAt(i) == " " )
{
i=i+1;
flagbegin=true;
}
else
{
flagbegin=false;
}
}
while ((flagend== true) && (j>=0))
{
if (str.charAt(j)==" ")
{
j=j-1;
flagend=true;
}
else
{
flagend=false;
}
}
if ( i > j ) return ("");
trimstr = str.substring(i,j+1);
return trimstr;
}
上面的方法都没用到正则,下面我们使用正则表达式来尝试一下
正则替换空格
代码如下:
//去除字符串中间空格
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, "");
}
var s = "asd ddd bbb sss";
var reg = /s/g;
var ss = s.replace(reg, "");
alert(ss);
去除字符串中所有空格(包括中间空格,需要设置第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;
}