我有一条来自api的信息:
例如,
"
1. Assist food and technology department in record keeping and filing"
如何删除额外的行?
答案 0 :(得分:0)
一般来说,有3种类型的东西会产生不需要的新行:
\n
\r
<br/>
代码 JavaScript支持使用replace()
函数的正则表达式:
s = s.replace(/[\r\n]+|<br *\/?>/g, " ");
注1:我在?
标记的/
之后添加了<br/>
,因为很多浏览器都没有插入该字符,因此非常可能不存在。
注意2:我在换行符之前和之后的空格之间放置一个空格,这意味着单词仍将按预期分开。
如果要从字符串的开头和结尾进行修剪,可以使用:
s = s.replace(/^(<br *\/?>| |\t|\n|\r|\v|\f| | | )+/, "")
.replace(/(<br *\/?>| |\t|\n|\r|\v|\f| | | )+$/, "");
请注意,\s+
可能包括也可能不包含它们在我的正则表达式中出现的所有字符。事情的出现取决于使用的浏览器。
答案 1 :(得分:0)
只需删除字符串开头和结尾的所有空格。这就是.trim()
的作用:
s = `
1. Assist food and technology department in record keeping and filing
`;
s = s.trim();
console.log(s);
trim()
的替代方案(如果您的浏览器不支持它?)将是一个正则表达式:
s = '\n\n1. Assist food and technology department in record keeping and filing \n \r\n ';
s = s.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
console.log(s);