您好,登錄后才能下訂單哦!
今天小編給大家分享一下JavaScript去除字符串兩端空格的方法有哪些的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。
JavaScript去除字符串兩端空格的三種方法:
//方法一:正則表達(dá)式 function _trim(string) { // 補(bǔ)全代碼 var reg=/^\s*|\s*$/g; //使用正則表達(dá)式,\s為空格,^\s為開(kāi)頭的空格,*代表0個(gè)或多個(gè),\s*$為結(jié)尾的零個(gè)或多個(gè)空格 string=string.replace(reg,''); return string; //return string.replace(/^\s*|\s*$/g,''); //return string.replace(/^\s|\s$/g,'');也能通過(guò)測(cè)試,*有沒(méi)有,有幾個(gè)都沒(méi)有影響 } //方法二:trim函數(shù):除去字符串開(kāi)頭和末尾的空格 function _trim(string) { return string.trim(); } //還有方法三:(法三屬實(shí)是沒(méi)想到,看別人的) let arr = string.split(''); let num = arr.indexOf(' '); // 先去除首端空格 while (num === 0) { arr.splice(num, 1); // 這里可用 arr.shift() num = arr.indexOf(' '); // 刪除后,重新賦值,再判斷 } // 第二步去除尾端空格 let numRev = arr.indexOf(' ', -1); // -1,從最后一個(gè)數(shù)字開(kāi)始查找,順序從前往后 while (numRev === arr.length - 1) { arr.splice(arr.length - 1, 1) // arr.length - 1,最后一項(xiàng)的索引,可換 arr.pop() numRev = arr.indexOf(' ', -1); // 刪除后,重新賦值,再判斷 } return string = arr.join('');
方法1:(最常用)全部去除掉空格
var str = ' abc d e f g '; function trim(str) { var reg = /\s+/g; if (typeof str === 'string') { var trimStr = str.replace(reg,''); } console.log(trimStr) } trim(str)
方法二:(強(qiáng)烈推薦)全部去除
function trimAll(ele){ if(typeof ele === 'string'){ return ele.split(' ').join(''); }else{ console.error(`${typeof ele} is not the expected type, but the string type is expected`) } } trimAll(str) // 1234456
方法三:指定位置清楚空格(第二個(gè)參數(shù)控制位置)
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 = /^[\s]+/g; break; case 'right' : // 去除右邊 Reg = /([\s]*)$/g; break; case 'both' : // 去除兩邊 Reg = /(^\s*)|(\s*$)/g break; default : // 沒(méi)傳默認(rèn)全部,且為下去除中間空格做鋪墊 Reg = /[\s]+/g; break; } let newStr = str.replace(Reg,''); if ( direction == 'middle' ){ let RegLeft = str.match(/(^\s*)/g)[0]; // 保存右邊空格 let RegRight = str.match(/(\s*$)/g)[0]; // 保存左邊空格 newStr = RegLeft + newStr + RegRight; // 將空格加給清完全部空格后的字符串 } return newStr; }
方法四:也可制定位置參數(shù)
function delSpace (str, pos) { let reg = /\s+/g switch (pos) { case 'l': reg = /^\s+/g break case 'r': reg = /\s+$/g break case 'c': reg = /(?<=\w)\s+(?=\w)/g break case 'lr': reg = /(^\s+)|(\s+$)/g break case 'a': reg = /\s+/g break } return str.replace(reg, '') }
方法五:與方法四類似,不過(guò)采用了原生的語(yǔ)法
function trim(str, pos) { let ret = str switch(pos) { case 'l': ret = str.trimStart() break case 'r': ret = str.trimEnd() break case 'lr': ret = str.trimStart().trimEnd() break case 'm': ret = str.replace(/(?<=[^\s])\s*(?=[^\s])/g, '') break default: ret = str.replace(/\s/g,'') } return ret }
以上就是“JavaScript去除字符串兩端空格的方法有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。