RubyのString入門


Rubyの文字列型Stringの基礎の紹介です。あらかじめ便利なメソッドを理解しておくとのちのちの作業がぐっと楽になります!

🗻 日付データの文字列への変換

DateTimeオブジェクトなどの日付データを指定した文字列に変換してくれるのがTime#strftimeです。

# 現在時刻を2017年5月16日 21:16:00といった文字列に置換
Time.now.strftime('%Y年%m月%d日 %H:%M:%S')

日付フォーマットを指定するフォーマットの記述方法はこちら。

フォーマット 説明
%Y 西暦を表す数値(例:2017)
%m 月を表す数値(01-12)
%d 日を表す数値(01-31)
%H 24時間制の時間(00-23)
%M 分を表す数値(00-59)

🍄 パディング(0埋め)

String#centerString#ljustString#rjustは最初の数桁を0埋めするような、文字列のパディングを行うためのメソッドです。

str = "hoge"
puts str.center(10, '@') #=> @@@hoge@@@
puts str.ljust(10, '@') #=> hoge@@@@@@
puts str.rjust(10, '@') #=> @@@@@@hoge

🐹 ヒアドキュメント

ヒアドキュメントでインデントの最も浅い部分を基準にコードを書くことができる記述方式。コードの崩れがないのでオススメ。

expected_result = <<~SQUIGGLY_HEREDOC
This would contain specially formatted text.
That might span many lines
SQUIGGLY_HEREDOC

🍮 大文字小文字を無視して比較:casecmp

casecmpは大文字と小文字を無視して比較を行うためのメソッドです。

word1 = 'hello'
word2 = 'fuga'
word3 = 'HELLO'
puts word1.casecmp(word2) # => -1
puts word1.casecmp(word3) # => 0

🏀 応用:URLから拡張子を取得する

URLの文字列から拡張子を抽出するにはURI.parseでパスを抽出して、File.extname()で拡張子を取得することで実現できます。

URL = 'http://recyclewearfashion.com/stylesheets/page_css/page_css_4f308c6b1c83bb62e600001d.css?1343074150'
File.extname(URI.parse(URL).path) # => '.css'

🐠 参考リンク

🖥 VULTRおすすめ

VULTR」はVPSサーバのサービスです。日本にリージョンがあり、最安は512MBで2.5ドル/月($0.004/時間)で借りることができます。4GBメモリでも月20ドルです。 最近はVULTRのヘビーユーザーになので、「ここ」から会員登録してもらえるとサービス開発が捗ります!

📚 おすすめの書籍