JavaScript 删除字符串空格的多种实现方法

作者:闭包旅人时间:2026-10-26 20:58:34浏览:77

本文总结了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));
} 

移除字符串中所有空白字符的函数


JavaScript移除字符串空格函数


代码示例如下:

 
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;
} 
作者最新文章