将HTML特殊实体替换为自定义字符串的最有效方法
本文关键字:字符串 有效 方法 自定义 HTML 实体 替换 | 更新日期: 2023-09-27 18:18:03
我想将所有的HTML特殊实体,如> <
替换为自定义字符串。
假设我有以下字符串:
string str = "<div>>hello<</div>";
和方法:Method(string str, string replaceStr)
调用Method(str, ":)")
后结果应为
<div>:)hello:)</div>
问题是有太多的特殊字符,我想知道什么是最有效的方法来完成这一点?
编辑:字符串。Replace不会做我的工作,使用Regex解析HTML不是真正的好方法。
在这个问题上可能没有任何干净的解决方案,因此我决定使用以下算法:
- 使用有效的HTML特殊字符(如
¶
) - 解析文件为字符串数组
- 感谢htmllagilitypack解析HTML和获得原始文本和替换所有实体。
我知道这对大的html字符串不是很有效,但它现在应该做的工作。
您可以尝试:
string str = "<div>>hello<</div>";
string output = Regex.Replace(str, ">|<", ":)");
也可以使用HtmlDecode
string str = "<div>>hello<</div>";
string output = WebUtility.HtmlDecode(str);