文字列からあらゆる種類の「Web の始まり」を削除する必要があります
私の TextView には、「http://」、「http:// www.」が含まれていない必要があります。、「www。」およびその他の URL プレフィックス。
これを手伝ってくれませんか?
のインスタンスをURI
使用し、それを使用して必要に応じて分割します。
URI uri = new URI(whateverYourAddressStringIs);
String path = uri.getPath(); // split whatever you need
正規表現を使用してそれを行うことができます
"www.aaa".replaceFirst("^(http[s]?://www\\.|http[s]?://|www\\.)","")
文字列置換を使用できます。
String myString = "http://www.abc.com";
myString.replace("http://","").replace("http:// www.","").replace("www.","");
「ウェブの始まり」と言うときは、「プロトコル」を意味すると思います。URL の詳細については、RFCまたはウィキペディアを参照してください。
一般的に言えば、「www.」を削除することはできません。URL から取得し、URL が同じホストを指すことを保証します。ユーザーから非表示にするだけなら問題ありませんが、個人的には面倒だと思います。
次のコードは、http だけでなく、Java が認識しているすべてのプロトコルを取り除きます。すべてのプロトコルに // があるわけではないため、手動で確認する必要があります。Java URL クラスは、必要なだけ正確に URL を分割できます。
import java.net.URL;
public class test
{
public static void main(String[] args)
{
try {
URL url = new URL(args[0]);
String protocol = url.getProtocol();
String result = args[0].replaceFirst(protocol + ":", "");
if (result.startsWith("//"))
{
result = result.substring(2);
}
System.out.println(result);
} catch (Exception e) {
System.out.println(e);
}
}
}