我试图创建一个函数,它插入字符串参数的字符之间的空格,然后返回一个新的字符串,它包含与空格字符分隔的参数相同的字符。如何在字符串中的每个字符之间添加空格?
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')周围加上''' –