0

まず、HTML を正規表現で解析するのはよくないことです。しかし幸いなことに、コードを抽出している Web サイトは単純なので、この方法を使用すると常に良い結果が得られます。

Pattern p = Pattern.compile("(?<=<span class=\\\"itemName\\\">).*(?=</span>)"); 
Matcher m = p.matcher(code);

「itemname」タグと「span タグ」の間にあるものを返すはずです。そんな感じ:

PESCA INSOLITA

しかし、その代わりに、次のように返します。

PESCA INSOLITA</span></a><li><a href="/uy/synop...

私は何を間違っていますか?

4

1 に答える 1

3

貪欲なマッチャーを使用しています.*。これにより、マッチャーspanは HTML ドキュメントの最後のタグまで完全に一致します。代わりに、.*?-- または、さらに良いことに、パーサーを使用してください...

于 2013-09-09T21:59:11.723 に答える