使用js去除字符串内所带有空格的三种方法
作者:yujkss
在前端开发的过程中,我们经常会遇到需要对于输入的字符串进行格式化处理,这篇文章主要给大家介绍了关于使用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//输出左右侧均无空格
方法一:(最常用)全部去除掉空格
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; }
总结
到此这篇关于使用js去除字符串内所带有空格的三种方法的文章就介绍到这了,更多相关js去除字符串内空格内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!