Html常见符号字符的匹配和替换

263 阅读1分钟

Html常见符号字符

本文已参与「新人创作礼」活动,一起开启掘金创作之路

符号含义html
=等于eq
!=不等于ne,neq
大于qt
<小于lt
>=大于等于gte,ge
<=小于等于lte,le
!not

过滤工具类方法

/**
 * Parse Html to Text
 *
 * @author xuzhou
 * @version 1.0.0
 * @title HtmlParseUtils
 * @date 2021/1/21 17:41
 */
public class HtmlParseUtils {

    /**
     * Html标签
     * < >
     */
    private static final String HTML_REG = "<[^>]+>";
    /**
     * &nbsp; -> " "
     */
    private static final String HTML_SPACE = "&nbsp;";
    private static final String HTML_SPACE_REPLACE = " ";
    /**
     * &amp; -> &
     */
    private static final String HTML_AND = "&amp;";
    private static final String HTML_AND_REPLACE = "&";
    /**
     * &lt; -> <
     */
    private static final String HTML_MORE = "&lt;";
    private static final String HTML_MORE_REPLACE = "<";
    /**
     * &gt; -> >
     */
    private static final String HTML_LESS = "&gt;";
    private static final String HTML_LESS_REPLACE = ">";
    /**
     * &quot; -> ”
     */
    private static final String HTML_DOUBLE_QUOTES = "&quot;";
    private static final String HTML_DOUBLE_QUOTES_REPLACE = "\"";
    /**
     * &qpos; -> ‘
     */
    private static final String HTML_APOSTROPHE = "&qpos;";
    private static final String HTML_APOSTROPHE_REPLACE = "'";

    private HtmlParseUtils() {

    }

    public static String htmlPares(String str) {
        if (StringUtils.isBlank(str)) {
            return StringUtils.EMPTY;
        }

        return str.replaceAll(HTML_REG, StringUtils.EMPTY)
                .replace(HTML_SPACE, HTML_SPACE_REPLACE)
                .replace(HTML_AND, HTML_AND_REPLACE)
                .replace(HTML_MORE, HTML_MORE_REPLACE)
                .replace(HTML_LESS, HTML_LESS_REPLACE)
                .replace(HTML_DOUBLE_QUOTES, HTML_DOUBLE_QUOTES_REPLACE)
                .replace(HTML_APOSTROPHE, HTML_APOSTROPHE_REPLACE);

    }
}