我试图用javascript中的字符串中的单行替换所有多行,但没有一个正常工作。以下是我的代码:
var str=inputList.replace(/\n/gm,"\n");
输入,例如
abc,def <3 newlines>
xyz <1 newline>
opp
预期产出:
abc,def <1 newline>
xyz
opp
实际输出:
abc,def<3 newlines>
xyz<1 newline>
opp
感谢任何帮助。
答案 0 :(得分:1)
(编辑:感谢stribizhev的简化版)
如果您尝试将两个或更多\n
替换为一个,请尝试以下操作:
var str = inputList.replace(/\n{2,}/gm,"\n");
{2,}表示2个或更多
答案 1 :(得分:0)
您正在使用代码中的\n
替换\n
。
取而代之的是:
var str = inputList.replace(/\n/gm, "");
答案 2 :(得分:0)
您只匹配一个并将其替换为一个。我相信如果您只是在<script>
<% Player player = (Player) request.getAttribute("player"); %>
alert(<%=player.getTempId()%>);
</script>
之后添加+
以匹配一个或多个。如果您不想仅匹配一个使用\n
来匹配两个或更多。
{2,}
或
var str=inputList.replace(/\n+/g,"\n");
^