我只有一个字符串
string = "example string is cool and you're great for helping out"
我想每两个单词插入一个换行符,因此它返回以下内容:
string = 'example string \n
is cool \n
and you're \n
great for \n
helping out'
我正在使用变量,因此无法手动执行。我需要一个可以接受此字符串并为我处理的函数。
谢谢!!
答案 0 :(得分:3)
您可以使用字符串的替换方法。
(.*?\s.*?\s)
.*?
-匹配除换行以外的所有内容。惰性模式。\s
-匹配一个空格字符。
let string = "example string is cool and you're great for helping out"
console.log(string.replace(/(.*?\s.*?\s)/g, '$1'+'\n'))
答案 1 :(得分:1)
我将使用以下正则表达式:enter code here
for(int i = 0; i < list.size(); i++) {
int j = list.size() - i - 1; // HOW DOES THIS LINE WORK
result.add(list.get(j));
}
return result;
}
}
:
(\s+\s*){1,2}
答案 2 :(得分:0)
首先,将列表拆分为数组array = str.split(" ")
,并初始化一个空字符串var newstring = ""
。现在,遍历所有数组项,并使用换行符array.forEach(function(e, i) {newstring += e + " "; if((i + 1) % 2 = 0) {newstring += "\n "};})
将所有内容重新添加到字符串中
最后,您应该具有:
array = str.split(" ");
var newstring = "";
array.forEach(function(e, i) {
newstring += e + " ";
if((i + 1) % 2 = 0) {
newstring += "\n ";
}
})
newstring
是带有换行符的字符串!
答案 3 :(得分:0)
let str = "example string is cool and you're great for helping out" ;
function everyTwo(str){
return str
.split(" ") // find spaces and make array from string
.map((item, idx) => idx % 2 === 0 ? item : item + "\n") // add line break to every second word
.join(" ") // make string from array
}
console.log(
everyTwo(str)
)
output => example string
is cool
and you're
great for
helping out