Javascript 将\r\n替换为<;br/>;作为文本
尝试用Javascript 将\r\n替换为<;br/>;作为文本,javascript,regex,Javascript,Regex,尝试用替换\r\n 2小时,但似乎不可能。 我不知道我在做什么!请帮忙 const text = '"Hello!\r\n\r\nThis is a dog!' const checkText = str=> { const match = /\r|\n/.exec(text); if (match) { //return str.replace(/(?:\\[rn]|[\r\n]+)+/g, '<br/>'); return str.replace(
替换\r\n 2小时,但似乎不可能。
我不知道我在做什么!请帮忙
const text = '"Hello!\r\n\r\nThis is a dog!'
const checkText = str=> {
const match = /\r|\n/.exec(text);
if (match) {
//return str.replace(/(?:\\[rn]|[\r\n]+)+/g, '<br/>');
return str.replace('/r/n', '<br/>');
}
return str;
};
checkText(text)
const text='“你好!\r\n\r\n这是一只狗!”
const checkText=str=>{
常量匹配=/\r |\n/.exec(文本);
如果(匹配){
//返回str.replace(/(?:\\[rn]\[\r\n]+)+/g,
);
返回str.replace('/r/n','
');
}
返回str;
};
检查文本(文本)
涵盖所有可能的新行字符组合
String tmp = s.replaceAll("\r\n", "<br>"); // Windows
tmp = tmp.replaceAll("\r", "<br>"); // Old MAC
return tmp.replaceAll("\n", "<br>"); // Linux / UNIX
String tmp=s.replaceAll(“\r\n”,“
”);//Windows
tmp=tmp.replaceAll(“\r”,“
”);//旧MAC
返回tmp.replaceAll(“\n”和“
”);//Linux/UNIX
涵盖所有可能的新行字符组合
String tmp = s.replaceAll("\r\n", "<br>"); // Windows
tmp = tmp.replaceAll("\r", "<br>"); // Old MAC
return tmp.replaceAll("\n", "<br>"); // Linux / UNIX
String tmp=s.replaceAll(“\r\n”,“
”);//Windows
tmp=tmp.replaceAll(“\r”,“
”);//旧MAC
返回tmp.replaceAll(“\n”和“
”);//Linux/UNIX
您可以尝试:
(text+ '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1<br/>$2');
(text+“”)。替换(/([^>\r\n]?)(\r\n |\n\r |\r |\n)/g,“$1
$2”);
您可以尝试:
(text+ '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1<br/>$2');
(text+“”)。替换(/([^>\r\n]?)(\r\n |\n\r |\r |\n)/g,“$1
$2”);
您的代码有多处错误:
String.prototype.replace
仅替换字符串的第一次出现的。您需要使用带有/g
标志的正则表达式参数来替换所有出现的字符串\r\n
,而不是/r/n
checkText
返回一个字符串
,但您的呼叫站点对返回的字符串没有任何处理—它只是被删除。字符串在JavaScript中是不可变的
-injection)攻击
相反,请执行以下操作之一:
- 使用
和HTML编码数组中的每个String.prototype.split
,并使用String
连接“
” - 使用
(不再使用.textContent
)将字符串直接添加到文档中,并为父元素提供CSS样式innerText
空白:预包装;
String.prototype.replace
仅替换字符串的第一次出现的。您需要使用带有/g
标志的正则表达式参数来替换所有出现的字符串\r\n
,而不是/r/n
checkText
返回一个字符串
,但您的呼叫站点对返回的字符串没有任何处理—它只是被删除。字符串在JavaScript中是不可变的
-injection)攻击
相反,请执行以下操作之一:
- 使用
和HTML编码数组中的每个String.prototype.split
,并使用String
连接“
” - 使用
(不再使用.textContent
)将字符串直接添加到文档中,并为父元素提供CSS样式innerText
空白:预包装;
text.replace(/\r\n/g, '<br/>');
text.replace(/\r\n/g,
);
只需执行以下操作:
text.replace(/\r\n/g, '<br/>');
text.replace(/\r\n/g,
);
文本来自API,我正在使用React。只需解析字符串即可。文本来自API,我正在使用React。只需解析字符串即可。