gpt4 book ai didi

javascript - 将所有\n 替换为
,所有不在 <textarea> </textarea> 标签内的内容

转载 作者:行者123 更新时间:2023-11-29 09:58:14 33 4
gpt4 key购买 nike

有一个javascript字符串

var s = ' hi there \n <textarea> hello \n there </texarea> hi \n hi';

任何人都知道如何替换 \n<br/>这只会影响 \n文本区域外的符号 ?
结果应该是这样的:

'hi there <br/> <textarea> hello \n there </texarea> hi <br/> hi';   

最佳答案

对于单个文本区域,可以使用match选择文本区域。然后,使用 replace使用带有全局标志的正则表达式将所有换行符替换为 <br/> .

var s = s.replace(/\n/g, "<br//>");
//Replace all newline characters by "<br//>"

var textareaContent = s.match(/<textarea>[\s\S]+?<\/textarea>/i);
//Preparation: Selects a textarea

var newString = textareaContent[0].replace(/<br\/\/>/g, "\n");
//Preparation: replaces all "<br//>" inside the textarea by "\n" (newline feed)

s = s.replace(textareaContent[0], newString);
//Replaces the textarea inside the string by the new textarea (= including "\n")

var desiredResult = s.replace(/<br\/\/>/g, "<br/>");
//Replaces the remaining "<br//>" (the ones outside the textarea) by "<br/>"

如果你必须支持多个文本区域,你可以使用 forexec 一起循环正则表达式对象的方法。

关于javascript - 将所有\n 替换为 <br/>,所有不在 &lt;textarea&gt; &lt;/textarea&gt; 标签内的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7472179/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com