我在将\ n转换为< br />
function format() {
var text = document.getElementById("formatArea").value;
text.replace("\n", "<br/>");
document.getElementById("resultArea").value = text;
}
<textarea rows="20" cols="80" id="formatArea">
</textarea>
<textarea rows="20" cols="80" id="resultArea">
</textarea>
<button onclick="format()">Click to create HTML breaks</button>
感谢任何帮助,我对JS的经验不足。
答案 0 :(得分:5)
这里有2个问题。
首先,replace
不会更改原始字符串,而是返回修改后的字符串。 (文档链接:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace)
其次,如果你在replace的第一个参数中放入一个字符串,它只会替换第一个出现的事件。如果要全部替换它们,请使用正则表达式。
所以你应该这样:
function format() {
var text = document.getElementById("formatArea").value;
text = text.replace(/\n/g, "<br/>");
document.getElementById("resultArea").value = text;
}
正则表达式上的g
(&#34; global&#34;)标志用于匹配所有出现的事件。
答案 1 :(得分:0)
替换所有是我开始学习JavaScript时我不明白的事情!
TL; DR JavaScript中没有library("corrplot")
dataset1 <- read.csv("winequality-white.csv",header=T)
# Below is the keypoint!
cor_dataset1 <- cor(datset1)
corrplot(cor_dataset1, type ="upper", order="hclust")
功能。但replaceAll
接受了一些名为正则表达式的内容。
要用字符串中的replace
替换所有foo
s,您必须bar
。 .replace(/foo/g, "bar")
将匹配所有/foo/g
,并将其替换为bar。 "foo"
被称为 flag ,它意味着全球,这意味着您将它们全部匹配。
如果您要替换g
,则必须执行\n
,就像我们为.replace(/\n/g, "<br/>")
所做的那样:
foo
此外,您必须将新字符串分配给旧字符串,因为text = text.replace(/\n/g, "<br/>")
不会修改原始变量值:
replace
&#13;
function format() {
var text = document.getElementById("formatArea").value;
text = text.replace(/\n/g, "<br/>");
document.getElementById("resultArea").value = text;
}
&#13;
答案 2 :(得分:0)
使用/\n/g
进行全局替换,您也错过了text
本身中已更改的text
值的分配,因此替换的文本未生效。您需要分配替换值,如text = text.replace(/\n/g, "<br/>");
:
function format() {
var text = document.getElementById("formatArea").value;
text = text.replace(/\n/g, "<br/>");
document.getElementById("resultArea").value = text;
}
&#13;
asd
&#13;
<textarea rows="20" cols="80" id="formatArea">
</textarea>
<textarea rows="20" cols="80" id="resultArea">
</textarea>
<button onclick="format()">Click to create HTML breaks</button>
&#13;