我想要实现的是取一个字符串:
var string = "Hello there my friend";
并返回格式化字符串,如下所示:
"HEL_THE_MY_FRI"
所以我试图在字符串中取每个单词的前三个字符,并在每个单词后添加下划线。大写很容易:) .toUpperCase()
答案 0 :(得分:1)
由于您没有为目前为止所尝试的内容提供任何代码,因此您采取的步骤是:
var phrase = 'this is my string';
var words = phrase.split(' ');
var result = '';
for (var i = 0; i < words.length; i++) {
var word = words[i];
result += word.substring(0, 3).toUpperCase();
if (i < words.length - 1) {
result += '_';
}
}
console.log(result);
答案 1 :(得分:1)
您可以使用replace
:
var string = "Hello there my friend";
var result = string.toUpperCase().replace(/\b(\S{1,3})\S*/g, '$1').replace(/ /g, '_');
console.log(result);
答案 2 :(得分:0)
console.log("Hello there my friend".split(" ").map((a)=>a.substring(0, 3)).join("_").toUpperCase());
答案 3 :(得分:0)
&#34;使用String.replace()
,String.toUpperCase()
和String.slice()
函数的单行&#34; 解决方案:
var string = "Hello there my friend",
replaced = string.replace(/\b(\w{1,3})(\w+\s?|\s)/g, '$1_').toUpperCase().slice(0,-1);
console.log(replaced);
&#13;