0

我是 JSoup 的新用户。我想href从 html 中提取值。

例如:

 String html = "<p>An <a href='http://exa'mple.com'><b>example</b></a> link.</p>";
 Document doc = Jsoup.parse(html);
 Element link = doc.select("a").first();
 String linkHref = link.attr("href"); 

我得到的输出为"http://exa",但我需要输出为"http://exa'mple.com"(href 中的原始文本)。link.outerHtml()正在提供一些不同的文本。

我无法更改 HTML。HTML 是用户的输入。

4

2 回答 2

0

尝试这个:

String html = "<p>An <a href='http://exa%27mple.com'><b>example</b></a> link.</p>";

于 2012-11-14T23:37:49.543 回答
0

我看不出这是怎么可能的,因为 jsoup 解析器会期望一个 ' 来关闭 href 参数,而这正是它所得到的。我认为你唯一的选择是预先解析用户提供的字符串,但即使这样也很棘手,因为你必须想出一个规则来区分“正确”和“不正确”的引号。

于 2012-11-14T23:44:59.850 回答