2
A
回答
0
一个简单的白名单方法:
string input = "<span><b>99</b> < <i>100</i></span> <!-- 99 < 100 -->";
// escape & <and>
input = input.Replace("&", "&").Replace(">", ">").Replace("<", "<");
// unescape whitelisted tags
string output = input.Replace("<b>", "<b>").Replace("</b>", "</b>")
.Replace("<i>", "<i>").Replace("</i>", "</i>");
输出:
<span><b>99</b> < <i>100</i></span> <!-- 99 < 100 -->
呈现的输出:
<跨度> < </SPAN > < - 99 < 100 - >
0
假设标签输入为喜欢这里StackOverflow上一个字符串,您一定想先分割字符串成单个标签:
string[] tags = "c# html lolcat ".Split(
new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
白色 - /黑名单可以使用HashSet<T>
存储表示标签:
HashSet<string> blacklist = new HashSet<string>(
StringComparer.CurrentCultureIgnoreCase) { "lolcat", "lolrus" };
然后你不得不检查tags
之一是名单上:
bool invalid = tags.Any(blacklist.Contains);
0
你可以试试Html Agility Pack。我没有试过它跳过标签,但它肯定能找到标签。
相关问题
- 1. DotNetOpenAuth白名单和黑名单如何工作?
- 2. 将AppEngine黑名单变为白名单
- 3. phpunit白名单vs黑名单
- 4. Zend_Acl白名单VS黑名单?
- 5. 上传的白名单或黑名单文件扩展名?
- 6. 白名单抑制
- 7. 使用PHP了解黑名单和白名单
- 8. python/django中的电子邮件白名单/黑名单
- 9. 内容脚本注入的多个白名单/黑名单?
- 10. 使用SecurityComponent :: requireSecure()将白名单列入黑名单
- 11. PHPUnit的白名单和黑名单似乎被忽略
- 12. 什么是白名单和黑名单数据?
- 13. 黑名单或白名单过滤方法?
- 14. 白名单中的白名单主页
- 15. 阿帕奇:实施黑名单/白名单访问控制+ LDAP认证
- 16. Node Express中的缓存:您如何列出白名单/黑名单视图?
- 17. 是否有可能[如何?]将shell_exec()命令列入黑名单和白名单?
- 18. YQL黑名单
- 19. 制作名单
- 20. PhoneGap白名单
- 21. Google API黑名单
- 22. chrome.webRequest API黑名单
- 23. 黑名单和preg_match
- 24. IP黑名单TcpServer
- 25. 来自例如白名单的白名单IFrame YouTube与AntiXSS
- 26. 如何制作黑白flash.media.Video?
- 27. 如何制作Chromecast API白名单网址页面?
- 28. 如何制作测试的junit白名单运行
- 29. 您可以创建stylecop规则的白名单而不是黑名单吗?
- 30. 在Java正则表达式中结合白名单和黑名单
你看这个? http://stackoverflow.com/questions/188870 – dtb 2009-09-18 01:03:23