我試圖創建一個函數,它插入字符串參數的字符之間的空格,然後返回一個新的字符串,它包含與空格字符分隔的參數相同的字符。如何在字符串中的每個字符之間添加空格?
E.g.
Hello
成爲
H e l l o
我是一個巨大的新手,我敢肯定,這似乎是一個沒有brain'er到一些人,但我似乎無法得到我的頭在附近。
我試圖創建一個函數,它插入字符串參數的字符之間的空格,然後返回一個新的字符串,它包含與空格字符分隔的參數相同的字符。如何在字符串中的每個字符之間添加空格?
E.g.
Hello
成爲
H e l l o
我是一個巨大的新手,我敢肯定,這似乎是一個沒有brain'er到一些人,但我似乎無法得到我的頭在附近。
另類對於分割和結合的解決方案可能是:
'Hello'.replace(/(.(?!$))/g,'$1 '); //=> H e l l o
// ^all characters but the last
// ^replace with found character + space
或函數中:
function insertChr(str,chr) {
chr = chr || ' '; //=> default is space
return str.replace(/(.(?!$))/g,'$1'+chr);
}
//usage
insertChr('Hello'); //=> H e l l o
insertChr('Hello','-'); //=> H-e-l-l-o
或作爲字符串函數原型:
String prototype.insertChr(chr){
chr = chr || ' '; //=> default is space
return this.replace(/(.(?!$))/g,'$1'+chr);
}
//usage
'Hello'.insertChr(); //=> H e l l o
'Hello'.insertChr('='); //=> H=e=l=l=o
function insertSpaces(aString)
{
return aString.spilt('').join(' ');
}
這是相當容易.. 。只需調用字符串上的替換方法如下...
var str = "Hello";
console.info(str.replace(/\B/g, " ");
我在這裏做什麼取代了單詞內部的非單詞邊界。它與單詞邊界相反,由單詞「\ b」表示;認爲它就好像你在匹配單詞的邊界。
感謝您的信息。我認爲我明白了這一點。 aString.split分割每個字符,然後連接與另一個空間一起回來。 這就是說...由於某種原因,當我嘗試調用函數 - 它不工作...我不是100%確定我做錯了什麼。 測試功能中,我使用以下: \t –
啊。我得到答案只是爲了讓你知道。我沒有在我的參數字符串insertSpaces('test')周圍加上''' –