增加html格式化方法
This commit is contained in:
parent
7313fd52f2
commit
2963028aa7
@ -1,5 +1,8 @@
|
||||
package ink.wgink.util;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.jsoup.Jsoup;
|
||||
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
@ -56,4 +59,48 @@ public class HtmlHelper {
|
||||
return html;
|
||||
}
|
||||
|
||||
/**
|
||||
* 格式化HTML代码
|
||||
*
|
||||
* @param code html代码
|
||||
* @param indentType 缩进类型,默认是空格
|
||||
* @param indentCount 缩进数量
|
||||
* @return
|
||||
*/
|
||||
public static String formatHtml(String code, String indentType, int indentCount) {
|
||||
if (StringUtils.isBlank(code)) {
|
||||
return null;
|
||||
}
|
||||
code = code.replaceAll(">\\s+<", "><");
|
||||
String html = Jsoup.parseBodyFragment(code).body().html();
|
||||
if (StringUtils.isBlank(html)) {
|
||||
return null;
|
||||
}
|
||||
if (indentType == null) {
|
||||
indentType = " ";
|
||||
}
|
||||
if (indentCount < 0) {
|
||||
indentCount = 0;
|
||||
}
|
||||
String[] htmlArray = html.split("\n");
|
||||
String result = "";
|
||||
for (String htmlLine : htmlArray) {
|
||||
int startIndex = htmlLine.indexOf("<");
|
||||
String tab = "";
|
||||
for (int i = 0; i < startIndex + indentCount; i++) {
|
||||
tab += indentType;
|
||||
}
|
||||
htmlLine = tab + htmlLine.trim();
|
||||
System.out.println(htmlLine);
|
||||
result += htmlLine + "\n";
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
String code = "<div id=\"input_1\" class=\"layui-form-item \" data-id=\"input_1\" data-tag=\"input\" data-index=\"0\"> <label class=\"layui-form-label layui-form-required\" style=\"width: 110px;\"><span style=\"color:red;\">*</span>单行文本:</label> <div class=\"layui-input-block\" style=\"margin-left: 110px\"> <input name=\"input_1\" value=\"\" placeholder=\"请输入\" class=\"layui-input\" lay-vertype=\"tips\" lay-verify=\"required\" style=\"width:100%\"> </div></div>";
|
||||
String result = formatHtml(code, "\t", 0);
|
||||
System.out.println(result);
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user