Java 从html页面提取锚定标记周围文本的正则表达式

Java 从html页面提取锚定标记周围文本的正则表达式,java,html,regex,Java,Html,Regex,有没有办法提取html页面中锚定标记周围的文本?我在java中工作,我的研究需要我提取标记中及其周围的数据。我已经尝试过搜索,我发现所有正则表达式只提取锚文本,而不提取锚文本周围的单词。正则表达式不是解析html的方法,而是.. 如果你必须有一个正则表达式的话,那么它又快又脏 “([^]*)([^]*)([^]*)” ([^]*)#(1) ( [^]* ) # (2) ( [^]* ) # (3) “是否有方法提供锚文本前后的字符数” 当然。您可以提供min/m

有没有办法提取html页面中锚定标记周围的文本?我在java中工作,我的研究需要我提取标记中及其周围的数据。我已经尝试过搜索,我发现所有正则表达式只提取锚文本,而不提取锚文本周围的单词。

正则表达式不是解析html的方法,而是..
如果你必须有一个正则表达式的话,那么它又快又脏

“([^]*)([^]*)([^]*)”

([^]*)#(1)
( [^]* )         # (2)
( [^]* )         # (3)
“是否有
方法提供锚文本前后的字符数”

当然。您可以提供min/max
{m,n}
或exact
{exact}
或混合物。
例如:


在=5之前,在=5到10之后
“([^]{5})([^]*)([^]{5,10})”

前=1到无限制,后=0到10
“([^]{1,})([^]*)([^]{0,10})”



还有许多其他可能的变化,包括混合文字

……不会再。。。为什么不直接使用语法分析器呢?改用HTML语法分析器。另外,请参阅Luiggi的链接。除非数量很少且非常有名,否则我不会使用正则表达式解析html。我推荐像jsoup这样的东西,它是一个专门用于web解析的库。你所说的环绕标签到底是什么意思?这是否意味着您想知道嵌套标签旁边的标签是什么?您也可以考虑使用解析器将HTML呈现为纯文本。这更有意义:)是否有办法提供锚文本前后的字符数??
 ( [^<>]* )         # (1)
 <a>
 ( [^<>]* )         # (2)
 </a>
 ( [^<>]* )         # (3)