|
|
@ -6,6 +6,7 @@ import java.util.regex.Pattern |
|
|
|
|
|
|
|
|
|
|
|
object HtmlFormatter { |
|
|
|
object HtmlFormatter { |
|
|
|
private val wrapHtmlRegex = "</?(?:div|p|br|hr|h\\d|article|dd|dl)[^>]*>".toRegex() |
|
|
|
private val wrapHtmlRegex = "</?(?:div|p|br|hr|h\\d|article|dd|dl)[^>]*>".toRegex() |
|
|
|
|
|
|
|
private val commentRegex = "<!--[^>]*-->".toRegex() //注释 |
|
|
|
private val notImgHtmlRegex = "</?(?!img)[a-zA-Z]+(?=[ >])[^<>]*>".toRegex() |
|
|
|
private val notImgHtmlRegex = "</?(?!img)[a-zA-Z]+(?=[ >])[^<>]*>".toRegex() |
|
|
|
private val otherHtmlRegex = "</?[a-zA-Z]+(?=[ >])[^<>]*>".toRegex() |
|
|
|
private val otherHtmlRegex = "</?[a-zA-Z]+(?=[ >])[^<>]*>".toRegex() |
|
|
|
private val formatImagePattern = Pattern.compile( |
|
|
|
private val formatImagePattern = Pattern.compile( |
|
|
@ -16,6 +17,7 @@ object HtmlFormatter { |
|
|
|
fun format(html: String?, otherRegex: Regex = otherHtmlRegex): String { |
|
|
|
fun format(html: String?, otherRegex: Regex = otherHtmlRegex): String { |
|
|
|
html ?: return "" |
|
|
|
html ?: return "" |
|
|
|
return html.replace(wrapHtmlRegex, "\n") |
|
|
|
return html.replace(wrapHtmlRegex, "\n") |
|
|
|
|
|
|
|
.replace(commentRegex, "") |
|
|
|
.replace(otherRegex, "") |
|
|
|
.replace(otherRegex, "") |
|
|
|
.replace("\\s*\\n+\\s*".toRegex(), "\n ") |
|
|
|
.replace("\\s*\\n+\\s*".toRegex(), "\n ") |
|
|
|
.replace("^[\\n\\s]+".toRegex(), " ") |
|
|
|
.replace("^[\\n\\s]+".toRegex(), " ") |
|
|
|