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

时间:2014-03-17 15:15:54

标签: java html regex

有没有办法在html页面中提取锚标签周围的文字?我在java工作,我的研究需要我提取标签内和周围的数据。我已经尝试过搜索,我发现只有正则表达式才能提取锚文本而不是周围的文字。

1 个答案:

答案 0 :(得分:1)

正则表达式不是解析html的方法,但是..
快速而肮脏,如果你必须有一个正则表达式

"([^<>]*)<a>([^<>]*)</a>([^<>]*)"

 ( [^<>]* )         # (1)
 <a>
 ( [^<>]* )         # (2)
 </a>
 ( [^<>]* )         # (3)

“有a way to provide the number of characters before and after the anchor text”吗?

不确定。您可以提供最小/最大{m,n}或精确{exact}或混合 例如:


之前= 5,之后= 5至10
"([^<>]{5})<a>([^<>]*)</a>([^<>]{5,10})"

在= 1到无限制之前,在= 0到10之后 "([^<>]{1,})<a>([^<>]*)</a>([^<>]{0,10})"


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