我在textarea中有一个文本,我使用.value属性读取它。
现在我想从我的文本中删除所有的换行符(当你按Enter时产生的字符)现在使用正则表达式替换,但我如何在正则表达式中指示换行符?
如果不可能,还有别的办法吗?
我在textarea中有一个文本,我使用.value属性读取它。
现在我想从我的文本中删除所有的换行符(当你按Enter时产生的字符)现在使用正则表达式替换,但我如何在正则表达式中指示换行符?
如果不可能,还有别的办法吗?
当前回答
换行符(最好是换行符)可以是回车符(CR, \r,在旧的mac上),换行符(LF, \n,在unix包括Linux上)或CR后面跟着LF (\r\n,在windows上)。(与另一个答案相反,这与字符编码无关。)
因此,匹配所有变量的最有效的RegExp文字是
/\r?\n|\r/
如果你想匹配字符串中的所有换行符,使用全局匹配,
/\r?\n|\r/g
分别。然后按照其他几个答案中建议的替换方法进行。(可能您不希望删除换行符,而是使用其他空白符替换它们,例如空格字符,以便单词保持完整。)
其他回答
最简单的解决方案是:
let str = '\t\n\r this \n \t \r is \r a \n test \t \r \n';
str = str.replace(/\s+/g, ' ').trim();
console.log(str); // logs: "this is a test"
.replace() with /\s+/g regexp将整个字符串中的所有空白字符组更改为单个空格,然后使用.trim()结果删除文本前后所有超出的空白。
被认为是空白字符: [\f\n\r\t\v \u00a0\u1680 \u2000 -\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]
换行符(最好是换行符)可以是回车符(CR, \r,在旧的mac上),换行符(LF, \n,在unix包括Linux上)或CR后面跟着LF (\r\n,在windows上)。(与另一个答案相反,这与字符编码无关。)
因此,匹配所有变量的最有效的RegExp文字是
/\r?\n|\r/
如果你想匹配字符串中的所有换行符,使用全局匹配,
/\r?\n|\r/g
分别。然后按照其他几个答案中建议的替换方法进行。(可能您不希望删除换行符,而是使用其他空白符替换它们,例如空格字符,以便单词保持完整。)
简单,我们可以删除新的行使用文本。Replace (/\n/g, " ")
const text = '学生明年\n GO \n For Trip \n'; console.log("Original: ", text); Var removed_new_line = text。Replace (/\n/g, " "); console.log("New: ", removed_new_line);
如果碰巧你不需要这个htm字符  shile使用str.replace(/(\r\n|\n|\r)/gm, ""),你可以使用这个str.split('\n').join(");
干杯
我正在添加我的答案,这只是上面的一个插件, 对于我来说,我尝试了所有的/n选项,但它不起作用,我看到我的文本来自服务器,用双斜杠,所以我用了这个:
var fixedText = yourString.replace(/(\r\n|\n|\r|\\n)/gm, '');