/*
* 替换文本
*/
public static String manageP(String str, String newChar) {
return manageP(str, newChar, 1);
}
/*
* 判断是否包含p标签
*/
public static String manageP(String str) {
return manageP(str, null, 2);
}
/**
* @param str 文本
* @param newChar 替换的字符串
* @param type 判断 1.正常替换 2.判断是否包含p标签
* @return
*/
public static String manageP(String str, String newChar, int type) {
//p开头的标签
String reg = "<p[^\\>]*\\>";
Pattern pattern = Pattern.compile (reg);
Matcher matcher = pattern.matcher (str);
while (matcher.find ())
{
if(type == 2) {
return null;
}
String result = matcher.group();
str = str.replaceAll(result, newChar);
}
return str;
}
//过滤html标签
java.util.regex.Pattern p_html = Pattern.compile("<[^>]+>",Pattern.CASE_INSENSITIVE);
java.util.regex.Matcher m_html;
/*
* 过滤空段落
*/
public String pFilter(String str) {
String s;
StringBuilder sb = new StringBuilder();
//获取p标签和内容
String reg = "<p[^>]*>(?:(?!<\\/p>)[\\s\\S])*<\\/p>";
Pattern pattern = Pattern.compile (reg);
Matcher matcher = pattern.matcher (str);
while (matcher.find ())
{
String result = matcher.group();
//过滤html标签
m_html = p_html.matcher(result);
s = m_html.replaceAll("");
//判断p标签中内容是否为空
if(!s.trim().equals("")) {
sb.append(result);
}
}
return sb.toString();
}