java - 使用 Java Regex 从 html 文件中删除二进制数据
问题描述
我有 html 文件,其中包含二进制数据的标签,例如:
<HTML>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">
<TEXT>
begin 644 image_002.jpg
M_]C_X 02D9)1@ ! 0 0 ! #_VP!# @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
,Z4]1]: %HHHIB/_9
end
</TEXT>
<TEXT>losses occurring in the third quarter and from weather </TEXT>
</BODY>
</HTML>
所以我正在尝试使用 Java Regex 删除所有具有二进制数据的“TEXT”标签。我尝试了 Jsoup 库,但它只删除了 html 标签。我在这里看到了同样的问题。但它没有使用 Java 正则表达式。
是否有任何标准方法可以从 html 文件中删除此二进制数据?
解决方案
val regex = """<TEXT>\s*begin \d+ (?>[^e]+|e(?!nd\s*<\/TEXT>))*end\s*<\/TEXT>"""
此处提供完整示例
推荐阅读
- ionic4 - 在 ionic 4 中查看 pdf 文件 - 类似条款和条件的页面
- autohotkey - How to activate/deactivate AutoHotkey script based on active input method?
- r - 在 Rcpp 中对矩阵的所有列或所有行进行快速选择的多线程最快方法 - OpenMP、RcppParallel 或 RcppThread
- azure-devops - 为什么我不能在不运行的情况下保存管道?
- firebase - 在没有用户交互的情况下在构建期间调用 setState()
- python - 将数据框打印到 CSV 文件中,保留非拉丁字符
- javascript - Array.push 不是 ionic 4 Angular 中的函数问题
- sql - Sql如何检查空值之前的值是否与空值之后的值相同窗口函数
- python - Pygame 帧循环
- javascript - NodeJS 请求,等待 java-script 注入内容