私は常に次のように見える文字列を持っています:
<a href="http://www.wcc.nrcs.usda.gov/nwcc/site?sitenum=XXX">Site Info</a>
...ここで、sitenum=XXX は、3 つまたは 4 つまたは 5 つの数字の組み合わせになります。この文字列からサイト番号だけを取得しようとしています。
これにより、3つの数字の正しい情報が得られると考えました。
String src = de.substring(de.lastIndexOf("sitenum=") + 3);
ただし、これは 'sitenum=' から 'sit' を取り除き、">Site Info のような他のすべてを返します。
数字を取得して、数字の直後にある「」を叩いたら止めてほしいです。
lastIndexOf を間違って使用していますか?
編集 - 回答はある URL では機能しましたが、別の URL では機能しませんでした:
http://www.wcc.nrcs.usda.gov/cgibin/wygraph-multi.pl?state=NV&wateryear=current&stationidname=19K07S
この URL から「状態」を取得しようとしていますが、状態を取得するのではなく、「状態」の文字を置き換えるだけです...コードは次のとおりです。
String state = de.substring(de.lastIndexOf("state=") + 2,
de.indexOf("&", de.lastIndexOf("state=")));
状態は常に 2 文字または数字の 0 です...これを文字列で実行すると、次のようになります。
ate=0
たとえば...これがどのように機能するのか混乱していますか?
編集編集!ああ!わかりました...だから、次の文字を見つけるために比較している文字の量である2は6である必要がありますか?