スリ飯屋Malankaのフリーエンジニアな日々

IT実務未経験から約1年、東京でフリーランスのRuby on Railsエンジニアに転職。約2年半、大阪中崎町でスリランカカレーの間借りしてました。フリーランスエンジニアになるためのノウハウ、スリランカの事を発信していきます。

【Ruby】URL文字列から、相対パスを取得する手順

Ruby】URL文字列から、相対パスを取得する手順

こんにちは、mahです。

このブログでは、自分がIT未経験から約1年でフリーランスエンジニアになるまでの過程、ノウハウなどを書いていきます。

今回は、URL文字列から、相対パスを取得する手順 をまとめました。

参考リンク

URI.parse (Ruby 2.7.0 リファレンスマニュアル)

標準添付ライブラリ紹介 【第 8 回】 uri, pathname

String#delete (Ruby 2.7.0 リファレンスマニュアル)

手順

まず URI.parseURI::Generic のサブクラスのインスタンスを生成します。

URI.parse(URL文字列)

[6] pry(main)> URI.parse('https://mah666hhh.hatenablog.com/entry')
=> #<URI::HTTPS https://mah666hhh.hatenablog.com/entry>

相対パスは、.path で取得出来ます。

URI.parse(URL文字列).path

[7] pry(main)> URI.parse('https://mah666hhh.hatenablog.com/entry').path
=> "/entry"

今回、自分はパスの頭の / が不要だったので、delete(‘/‘)で削除します。

URI.parse(URL文字列).path.delete('/')

[8] pry(main)> URI.parse('https://mah666hhh.hatenablog.com/entry').path.delete('/')
=> "entry"

これでURLから欲しい文字列を取り出す事ができました。


以上、【Ruby】URL文字列から、相対パスを取得する手順 でした。

Rubyには便利なメソッドが沢山用意されているので、一見難しそうに見えることも簡単に実現出来たりします。

たまーにリファレンスを色々ググってみると、

  • こんな簡単に出来たのか!

という発見がありますよ。

もし、まだRubyを使いはじめて日が浅い人は、一度技術書で体型的に学ぶのをオススメします。

自分も本は苦手ですが、

  • ググってるだけだと、どうしても知識が断片的になる

  • 基本を知らないまま進んでいる

ということに気付き、技術書を手にとって学んでみました。

その時に読んでいたのが、下記の本。


プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで/伊藤淳一【1000円以上送料無料】

この本の作者の伊藤さんは、Qiitaで沢山の良質記事を量産している方です。

jnchito - Qiita

この本についても初心者から熟練者まで、丁寧でわかりやすい文章、確かなコードでとても読みやすく書かれています。

自分も大変お世話になっています笑

まだまだこれからも勉強しなきゃ...


最後に、下記の記事で、

  • 実務未経験から1年でフリーランスエンジニアになった話

  • 【完璧!】フリーエンジニアの案件面談対策 〜全20問〜

を紹介しています。

  • フリーエンジニアになりたい!

  • 面談はどんなことを聞かれるのか知りたい!

という方は、よかったら参考にしてみてください。

www.malanka.tech

www.malanka.tech

最後までお読み頂きありがとうございました★