URL中の特定の文字列の抽出

URL中の特定の文字列の抽出

これは、表示中のページからJavascriptコードを使うときに利用する

URL文字列を使っていると
ホスト部分や
クエリパラメーター部分だけ切り出して利用することがある

PHPのマッシュアップではおなじみのもの

これを実現するには
Uriクラスを使う

まずほ、Uriインスタンスの取得

Uriクラスの
parse()を使うことで、Uriインスタンスを取得する

Uri uri = Uri.parse("http://www.example.com/");

次に、取得したインスタンスのメソッドを取得
もし、ホスト部分を取得したいのなら
getHost()
を使う

String scheme = uri.getHost();

ほかのメソッドを使えば
様々な部分の値の取得が可能

例えばURLが
https://user:pass@www.example.com:8080/path/to/index.html?parameter1=value1&parameter2=value2#fragment

だったなら
getScheme()で
http:// とかhttps:// の判別

getSchemeSpecificPart()は
URL全部

getUserInfo()では
user:pass
みたいなユーザ名、パスワード

getAuthority()で
user:pass@www.example.com:8080
みたいに、
ユーザ名:パスワード@ドメイン:ポート番号

getHost()で
www.example.comというようにドメイン
取得

getPort()で8080というように、ポート番号の取得 

getPathSegment()で
ファイルまでのパス取得
今回なら
path/to/index.htmlを
配列で [path, to, index.html]と扱う

getLastPathSegment()で
パスの最後を取得
今回なら index.html

getQuery()で
URLの ? 以降のパラメーターを取得
今回なら
parameter1=value1&parameter2=value2

getFragment()で
fragmentの取得

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です