パーサーに問題がありました。ウェブサイトで画像リンクを読みたいのですが、これは通常は正常に機能します。しかし、今日、特殊文字を含むリンクを取得しましたが、通常の正規表現は機能しませんでした。
これは私のコードがどのように見えるかです。
Pattern t = Pattern.compile(regex.trim());
Matcher x = t.matcher(content[i].toString());
if(x.find())
{
values[i] = x.group(1);
}
そして、これはhtmlの一部であり、問題を引き起こします
<div class="open-zoomview zoomlink" itemscope="" itemtype="http://schema.org/Product">
<img class="zoomLink productImage" src="
http://tnm.scene7.com/is/image/TNM/template_335x300?$plus_335x300$&$image=is{TNM/1098845000_prod_001}&$ausverkauft=1&$0prozent=1&$versandkostenfrei=0" alt="Produkt Atika HB 60 Benzin-Heckenschere" title="Produkt Atika HB 60 Benzin-Heckenschere" itemprop="image" />
</div>
これは、src 属性の一部を取得するために使用している正規表現です。
<img .*src="(.*?)" .*>
リンク内のすべての特殊文字と関係があると思います。しかし、それらすべてを回避する方法がわかりません。私はすでに試しました
Pattern.quote(content[i].toString())
しかし結果は同じで、何も見つかりませんでした。