C#.net文本过滤器

C#.net文本过滤器,c#,asp.net,shortcode,C#,Asp.net,Shortcode,我想将我的文本过滤为特定格式。 假设我有一个像这样的文本 Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本,[iframe width=“200”height=“300”][/iframe]Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本 我想将其转换为: Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟

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

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

我想将其转换为:

Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本, Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本


例2:
[caption]我的字幕[/caption]
将显示
我的字幕

您需要解析您的内容并用html等价物替换预定义的“组合”


另外,如果您接受来自成员的内容,您需要非常小心,因为替换内容会直接更改html代码。

James Deville有一个很好的问题-最好的解决方案可能是使用已经组合在一起的文本标记系统(标记等)

但如果您决定确实需要以自定义方式执行此操作(假设将有用户输入):

只需确保不要使用类似
s/\[///code和code/\]/>/
的任何东西。这将使您容易受到漏洞的攻击

有人可以进来

[script type="text/javascript" src="http://malicious-server.haxx/XSS.js"]
这将被翻译成

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

然后,任何查看该文本片段的人也会无意中请求该恶意javascript


摘要:如果你做得不对,你可能会在你的网站上引入严重的安全漏洞。因此,尽可能使用已经实现的系统。否则,请对接受的标记进行严格选择。

是否有不想使用现有格式语言的原因?像Markdown或BBCodeWoooooooo一样,我花了好几天的时间来回答一个完全不同的问题。请正确设置您的问题格式!!你不明白我的问题吗?我想在asp.net中使用类似wordpress的短代码,我想在asp.net中解析,而不是JavaScript。我想你需要更仔细地阅读我的答案。它与使用javascript进行解析无关。它不会将所有文本拼凑到属性中,我将只拼凑我提到的方法