使用js去除字符串内所带有空格

使用js去除字符串内所带有空格,有以下三种方法:

( 1 ) replace正则匹配方法

去除字符串内所有的空格:str = str.replace(/\s*/g,“”);

去除字符串内两头的空格:str = str.replace(/^\s*|\s*$/g,“”);

去除字符串内左侧的空格:str = str.replace(/^\s*/,“”);

去除字符串内右侧的空格:str = str.replace(/(\s*$)/g,“”);

示例:

var str = " 6 6 ";
var str_1 = str.replace(/\s*/g,"");
console.log(str_1); //66
var str = " 6 6 ";
var str_1 = str.replace(/^\s*|\s*$/g,"");
console.log(str_1); //6 6//输出左右侧均无空格
var str = " 6 6 ";
var str_1 = str.replace(/^\s*/,"");
console.log(str_1); //6 6 //输出右侧有空格左侧无空格
var str = " 6 6 ";
var str_1 = str.replace(/(\s*$)/g,"");
console.log(str_1); // 6 6//输出左侧有空格右侧无空格

( 2 ) str.trim()方法

trim()方法是用来删除字符串两端的空白字符并返回,trim方法并不影响原来的字符串本身,它返回的是一个新的字符串。
另外的,单独去除左侧空格可以使用trimLeft()方法,单独去除右侧空格则可以使用trimRight()方法。

缺陷:只能去除字符串两端的空格,不能去除中间的空格

示例:

var str = " 6 6 ";
var str_1 = str.trim();
console.log(str_1); //6 6//输出左右侧均无空格
单独去除左侧空格则使用 str.trimLeft(); //var str_1 = str.trimLeft();
单独去除右侧空格则使用 str.trimRight();//var str_1 = str.trimRight();

( 3 ) JQ方法:$.trim(str)方法

$.trim() 函数用于去除字符串两端的空白字符。

注意:$.trim()函数会移除字符串开始和末尾处的所有换行符,空格(包括连续的空格)和制表符。如果这些空白字符在字符串中间时,它们将被保留,不会被移除

示例:

var str = " 6 6 ";
var str_1 = $.trim(str);
console.log(str_1); //6 6//输出左右侧均无空格

方法1:(最常用)全部去除掉空格

var str = '  abc d e f  g ';
        function trim(str) {
    
    
            var reg = /[\t\r\f\n\s]*/g;
            if (typeof str === 'string') {
    
    
                var trimStr = str.replace(reg,'');
            }
            console.log(trimStr)
        }
        trim(str)

方法二:(强烈推荐)全部去除

function trimAll(ele){
    
    
    if(typeof ele === 'string'){
    
    
       return ele.split(/[\t\r\f\n\s]*/g).join('');
           
    }else{
    
    
        console.error(`${
      
      typeof ele} is not the expected type, but the string type is expected`)
    }
  
}
 
trimAll(str)  // 1234456

方法三:指定位置清楚空格(第二个参数控制位置)

function deleSpac(str,direction) {
    
     // 1 串的模板 2 清除哪边空格
            if(typeof str !== 'string'){
    
     // 限制下条件,必须是字符串
                 console.error(`${
      
      typeof ele} is not the expected type, but the string type is expected`)
                return false
            }
            let Reg = '';
            switch(direction) {
    
    
                case 'left' : // 去除左边
                    Reg = /^[\t\r\f\n\s]+/g;
                    break;
                case 'right' : // 去除右边
                    Reg = /([\t\r\f\n\s]+)$/g;
                    break;
                case 'both' : // 去除两边
                    Reg = /(^[\t\r\f\n\s]*)|([\t\r\f\n\s]*$)/g
                    break;
                default :   // 没传默认全部,且为下去除中间空格做铺垫
                    Reg = /[\t\r\f\n\s]*/g;
                    break;
            }
            let newStr = str.replace(Reg,'');
            if ( direction == 'middle' ){
    
    
                let RegLeft = str.match(/(^[\t\r\f\n\s]*)/g)[0]; // 保存右边空格
                let RegRight = str.match(/([\t\r\f\n\s]*$)/g)[0]; // 保存左边空格
                newStr = RegLeft + newStr + RegRight; // 将空格加给清完全部空格后的字符串
            }
            return newStr;
        }

猜你喜欢

转载自blog.csdn.net/qq_39900031/article/details/131620041
今日推荐