需要修改我的正则表达式以忽略 iframe 标签

发布于 2024-11-06 23:14:05 字数 400 浏览 4 评论 0原文

您好,我的网站上有一个用于博客文章的免费文本编辑器,其中包含 C# 作为代码隐藏。为了安全起见,我使用以下正则表达式从帖子中删除所有 HTML 标签:

Regex.Replace(value, @"<(.|\n)*?>", string.Empty);

但是,我现在需要允许嵌入使用 iframe 的 YouTube 视频,例如:

<iframe width="425" height="349" src="http://www.youtube.com/embed/ttBhGiuMUmU" frameborder="0" allowfullscreen></iframe>

有人可以帮我修改此正则表达式以允许这?

Hi I have a free text editor for blog posts on my website with C# as code behind. I use the following regular expression to strip all HTML tags out of the post for security:

Regex.Replace(value, @"<(.|\n)*?>", string.Empty);

However I now have a requirement to allow the embedding of youtube videos, which use an iframe, for example:

<iframe width="425" height="349" src="http://www.youtube.com/embed/ttBhGiuMUmU" frameborder="0" allowfullscreen></iframe>

Could someone help me modify this regex to allow for this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

凹づ凸ル 2024-11-13 23:14:05

试试这个:

<(?!/?iframe)(.|\n)*?>

(?!/?iframe) 是一个否定的前瞻,它检查 < 后面是否没有 iframe/iframe

我在 regexr 上在线测试了

Try this one:

<(?!/?iframe)(.|\n)*?>

The (?!/?iframe) is a negative lookahead, that checks that the < is not followed by an iframe or /iframe.

I tested online here on regexr

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文