首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何查找字符串中是否包含html数据?

如何查找字符串中是否包含html数据?
EN

Stack Overflow用户
提问于 2010-06-16 17:26:39
回答 6查看 31.4K关注 0票数 23

如何查找字符串中是否包含HTML数据?用户通过web界面提供输入,他很可能使用简单的文本或使用HTML格式。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-06-16 17:28:17

您可以使用正则表达式来搜索HTML标记。

票数 3
EN

Stack Overflow用户

发布于 2014-03-23 02:36:24

我知道这是一个古老的问题,但我遇到了这个问题,并且正在寻找更全面的东西,可以检测HTML实体,并忽略<和>符号的其他用法。我想出了下面这个类,它运行得很好。

你可以在http://ideone.com/HakdHo上现场体验

我还上传了一堆JUnit测试到GitHub上。

代码语言:javascript
复制
package org.github;

/**
 * Detect HTML markup in a string
 * This will detect tags or entities
 *
 * @author dbennett455@gmail.com - David H. Bennett
 *
 */

import java.util.regex.Pattern;

public class DetectHtml
{
    // adapted from post by Phil Haack and modified to match better
    public final static String tagStart=
        "\\<\\w+((\\s+\\w+(\\s*\\=\\s*(?:\".*?\"|'.*?'|[^'\"\\>\\s]+))?)+\\s*|\\s*)\\>";
    public final static String tagEnd=
        "\\</\\w+\\>";
    public final static String tagSelfClosing=
        "\\<\\w+((\\s+\\w+(\\s*\\=\\s*(?:\".*?\"|'.*?'|[^'\"\\>\\s]+))?)+\\s*|\\s*)/\\>";
    public final static String htmlEntity=
        "&[a-zA-Z][a-zA-Z0-9]+;";
    public final static Pattern htmlPattern=Pattern.compile(
      "("+tagStart+".*"+tagEnd+")|("+tagSelfClosing+")|("+htmlEntity+")",
      Pattern.DOTALL
    );

    /**
     * Will return true if s contains HTML markup tags or entities.
     *
     * @param s String to test
     * @return true if string contains HTML
     */
    public static boolean isHtml(String s) {
        boolean ret=false;
        if (s != null) {
            ret=htmlPattern.matcher(s).find();
        }
        return ret;
    }

}
票数 22
EN

Stack Overflow用户

发布于 2010-06-16 17:29:12

在支持bean中,您可以尝试查找html标记,如<b><i>等。您可以使用正则表达式(慢速)或仅尝试查找"<>“字符。这取决于你对用户是否使用html的确信程度。

请记住,用户可以编写<asdf>。如果您想100%确定所使用的html是有效的,那么您将需要使用某个库中的一个复杂的html解析器(也许是TidyHTML?)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3052052

复制
相关文章

相似问题

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