在函数前面用变量Javascript中的空格替换新行
Replace new line with space in variable Javascript before function
我有以下代码snipplet:
<script>
var textstring =
'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.';
function insertNewLines(textstr, nos) {
var resulttext = '';
textstr = textstr.replace("'n", "<br />");
while (textstr.length > 0) {
resulttext += textstr.substring(0, nos) + '<br/>';
textstr = textstr.substring(nos);
}
textstring中的文本是两行,即第一行和第二行之间有一个分隔符。当我调用函数时,它甚至在我得到替换部分之前就给了我一个错误。(调试器表示,由于线路中断,块未正确关闭(
有什么办法我可以绕过它吗?我只需要去掉换行符,或者更好地保留它,但让脚本正确运行。
谢谢你的帮助。
Vagabond
该代码中有两个基本语法错误:
-
除非用反斜杠转义,否则字符串文字中不能有换行符。(您可以在ES2015模板文本中,但不能在字符串文本中。(如果您这样做,换行符将而不是包含在字符串中。请改用
'r'n
。 -
您错过了功能的关闭
}
除此之外,不需要循环;JavaScript的replace
可以接受带有g
标志(表示"全局"(的正则表达式,因此:
var textstring =
'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.'r'nCum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.';
function insertNewLines(textstr, nos) {
return textstr.replace(/'r'n/g, "<br />");
}
console.log(insertNewLines(textstring));
我用'r'n
替换了文本换行,然后用对replace
的单个调用替换了循环。
首先,
var textstring ='Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.'
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.';
在函数中添加一个括号,它应该可以工作。
function insertNewLines(textstr, nos) {
var resulttext = '';
textstr = textstr.replace("'n", "<br />");
while (textstr.length > 0) {
resulttext += textstr.substring(0, nos) + '<br/>';
textstr = textstr.substring(nos);
}
}
JavaScript字符串中的换行符应使用反斜杠('
(进行转义。
您的变量textstring
也需要更新,如下所示。
var textstring =
'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. '
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.';
function insertNewLines(textstr, nos) {
var resulttext = '';
textstr = textstr.replace("'n", "<br/>");
while (textstr.length > 0) {
resulttext += textstr.substring(0, nos) + '<br/>';
textstr = textstr.substring(nos);
}
}
您必须用反斜杠转义文本字符串,而且没有右括号。下面的代码是用反斜杠转义的,脚本正在运行。然而,输出是你想要的并没有被检查。
var textstring =
'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.'
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.';
insertNewLines(textstring,2);
function insertNewLines(textstr, nos) {
var resulttext = '';
textstr = textstr.replace("'n", "<br />");
while (textstr.length > 0) {
resulttext += textstr.substring(0, nos) + '<br/>';
textstr = textstr.substring(nos);
}
}
相关文章:
- 用空格替换下划线PHP
- 用空格替换+
- 用空格替换单引号和其他符号
- 如何用空格替换下划线
- 用空格替换regex字符
- JavaScript 替换是将每个空格替换为非空格
- 不能使用正则表达式将空格替换为零宽度空间
- 将 url 中的空格替换为代码
- 在 Netbeans 代码模板中将空格替换为下划线
- 将空格替换为
- 将空格和空格替换为逗号,并在 JS 中使用连字符
- 为什么 标记将空格替换为 %2520?如何解决问题
- 将换行符+4空格替换为
- 如何在javascript中用一个特殊字符开头的单词内的空格替换下划线
- 如何在javascript中用空格替换换行符
- 将空格替换为
- 如何在scala代码中用单个空格替换所有连续的下划线
- 将搜索输入框中的所有空格替换为&性格
- 用javascript将空格替换为逗号
- 将整个字符串中的空格替换为unedrscores