我正在尝试构建一个代码格式化工具。我的脚本从服务器获取整个正文文本并隔离代码块。我有代码,我试图检查文本正文中是否有分号符号,并在该字符后插入换行符,但问题似乎是HTML识别<br>
标记,因此它会打断任何一行。我还尝试使用StringBuilder将该标记追加到分号字符之后,但不起作用。
下面是我的代码
@if(code != string.Empty) {
// Create a new instance of StringBuilder
var str = new StringBuilder();
// Find where there is a semicolon
foreach(var c in code) {
str.Append(c);
if(c == ';') {
// Append a line break
str.Append("<br>");
}
}
// Display the code in the code div
<p style="text-align:justify;">@str</p>
}
字符串
我也试过这个:
str.AppendLine();
型
当您向控制台写入时,该方法有效,但HTML不将'\n'识别为新行字符。它识别<br>
。我该怎么做?
2条答案
按热度按时间oxf4rvwz1#
当您动态生成HTML时,就像您的情况一样,您需要使用
Html.Raw()
方法来正确呈现HTML标记。你不需要做这些。您可以简单地使用Replace方法。它将用所需的字符串替换所有出现的分号。
字符串
zrfyljdw2#
只是另一个选择:在分号后使用.AppendLine(),并将代码 Package 在标记中。