首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何检查字符串内容中是否有HTML?

如何检查字符串内容中是否有HTML?
EN

Stack Overflow用户
提问于 2012-05-28 07:41:38
回答 6查看 36.4K关注 0票数 23

如何检查PHP字符串内容是否包含HTML内容?

我不擅长使用正则表达式,所以我希望有一个名为"is_html“的函数来检查这一点。:)谢谢!

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-05-28 07:50:53

如果你想测试一个字符串是否包含一个"<something>",(它是懒惰的,但可以为你工作),你可以尝试这样做:

代码语言:javascript
复制
function is_html($string)
{
  return preg_match("/<[^<]+>/",$string,$m) != 0;
}
票数 35
EN

Stack Overflow用户

发布于 2013-08-20 23:26:00

我不使用正则表达式(就像这里的其他建议一样),而是使用以下方法:

代码语言:javascript
复制
    function isHtml($string)
    {
        if ( $string != strip_tags($string) )
        {
            return true; // Contains HTML
        }
        return false; // Does not contain HTML
    }

在这里,我使用PHP函数strip_tags从字符串中删除任何超文本标记语言。然后,它比较字符串,如果它们不匹配,则显示HTML标记。

票数 17
EN

Stack Overflow用户

发布于 2015-11-10 01:27:37

可以接受的答案是将包含HTML的字符串视为HTML,但显然不是。

我使用下面的方法,这可能是一个更好的主意,也可能不是。(欢迎评论。)

代码语言:javascript
复制
function isHTML( $str ) { return preg_match( "/\/[a-z]*>/i", $str ) != 0; }

这将查找包含在斜杠和右括号之间有零个或多个字母的/>的任何字符串。

上面的函数返回:

代码语言:javascript
复制
<something>             is NOT HTML
<b>foo</b>              is HTML
<B>foo</B>              is HTML
<b>foo<b>               is NOT HTML
<input />               is HTML
票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10778035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档