c# .net文本过滤器

本文关键字:过滤器 文本过滤 文本 net | 更新日期: 2023-09-27 18:15:05

我想将文本过滤为特定格式。假设我有一个像

这样的文本

Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业的标准虚拟文本,[iframe width="200" height="300"][/iframe] Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本,

我想转换为:

Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本,< iframe width="200" height="300"></iframe > Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本,

Ex2: [caption]My Caption[/caption]将显示<span class="caption">My Caption</span>

c# .net文本过滤器

您需要解析您的内容并将预定义的"组合"替换为等效的html。

你也需要非常小心,如果你接受成员的内容,因为你会直接改变html代码与替换。

James Deville有一个非常好的问题——可能最好的解决方案是使用一个已经放在一起的文本标记系统(markdown等)。

但是如果你决定需要用自定义的方式来做(假设有用户输入):

只要确保使用s/'[/</s/']/>/之类的东西。这将使您对漏洞敞开大门。

有人可以输入

[script type="text/javascript" src="http://malicious-server.haxx/XSS.js"]

可以翻译成

<script type="text/javascript" src="http://malicious-server.haxx/XSS.js">

那么任何查看该文本片段的人也会无意中请求恶意javascript。

摘要:如果你做错了,你可能会给你的网站带来严重的安全漏洞。所以尽可能使用一个已经实现的系统。否则,对接受的标签要非常有选择性。