Rubyのuriライブラリの使い方を現役エンジニアが解説【初心者向け】

初心者向けにRubyのuriライブラリの使い方について解説しています。これはURIを取り扱う標準ライブラリになります。基本の書き方と使用例を見ていきましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

Rubyのuriライブラリの使い方について解説します。

Rubyについてそもそもよく分からないという方は、Rubyとは何なのか解説した記事をまずご覧ください。

 

なお本記事は、TechAcademyのWebアプリケーションオンラインブートキャンプの内容をもとに紹介しています。

 

 

田島悠介

今回は、Rubyに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

uriライブラリの使い方について詳しく説明していくね!

大石ゆかり

お願いします!

 

uriライブラリとは

Rubyの標準ライブラリーとしてuriライブラリーというのがあります。実際のところURIを正確に取り出すことは結構しんどかったりします。

しかし、Rubyには上にも書いたように、URIを取り扱う標準ライブラリーが存在するので、意外に楽に取得できてしまうんです。

 

つまりuriライブラリーとは、Rubyの標準ライブラリーでURIのドメインなどを簡単にとりだすことのできるライブラリーなのです。

 

URI(Uniform Resource Identifier)とは

ではここでURIとは何なのかを説明いたしましょう。

URI(Uniform Resource Identifier)とはURLとURNとを総称したものであり、基本的にはURIと URLは同じもの(厳密には違いますが)と思っていても差し支えないでしょう。

 

そこで、URL(Uniform Resource Locator)から説明しますが、これはWeb上にあるファイルの位置を示しているもので、Web上の住所ということとなります。ですので、サイトのアドレスはよくURLと言われているんですね。

 

次にURN(Uniform Resource Name)ですが、こちらはWeb上でのファイルの名前ということで、簡単に言ってしまえば、識別するための番号とか、シリアルナンバーみたいなものです。

 

このURLとURNを合わせた総称がURIということとなります。

 

[PR] Rubyのプログラミングで挫折しない学習方法を動画で公開中

uriライブラリの使い方

ここでは、実際にRubyのuriライブラリーを使って書いてみましょう。まず、このuriライブラリーを使うには以下の文を書きましょう!!

 

require 'uri'

 

そこで

 

URI.parse

 

を使うと、URLの文字列をURIオブジェクトへと生成いたします。以上を踏まえて書いてみましょう。

 

require 'uri'
uri = URI.parse("https://www.google.co.jp/")
p uri.scheme 
p uri.host 
p uri.port 
p uri.path

#=>
"https"
"www.google.co.jp"
443
"/"

 

実行するとこのようになります。これはhttpの構成要素を以下のように分解して出力しています。

 

uri.scheme => "https"
uri.host => "www.google.co.jp"
uri.port => "443"
uri.path => "/"

 

いかがでしたか?このURIライブラリーを使うと、簡単にURIのドメインなどを取り出すことができますね。

ご参考にされると幸いです。

 

筆者プロフィール

町田 耕

学生時代は会計学専攻。塾講師勤務を経て、企業のCFOとして会社経営に携わる。

会社経営から一線を退いた後、インフラエンジニアの妻の勧めでプログラミングを

独学で始め、プログラミングセミナーなど転々としながら、開発案件に携わるようになる。

現在、フリーランスとして活動しながらテックアカデミーのメンターも勤めている。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

TechAcademyでは初心者でも最短4週間でエンジニアになれるRuby on Railsオンラインブートキャンプを開催しています。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間でオリジナルWebサービスを開発することが可能です。

また、現役エンジニアから学べる無料のプログラミング体験会も実施しているので、ぜひ参加してみてください。