ようへいの日々精進XP

よかろうもん

2018 年 06 月 25 日 (月)

ジョギング

  • 自宅→香椎宮香椎浜で 30 分くらい
  • 左足足底筋に違和感というか痛み
  • 蒸し暑い
  • そろそろ T シャツで走ってもいいかもしれない

日課

  • (腕立て x 50 + 腹筋 x 50) x 3

Github (Github Enterprise) のカンバン機能を使い始めた

  • 今日中にやらんといかん事, 進行中の作業, ペンディングにしている作業等をうまーく纏めたかったので Github のカンバン機能 (Projects) を使い始めた
  • ポストイットでペタペタ貼る感じでとりあえず使ってみようと思う
  • Backlog の課題と連携出来る方法ないのかなー
    • 課題が丸っと 1 つのカラムに 1 つのカードとして追加される感じ
    • Github の issue では出来ているんだけど, issue は Backlog 課題との二重管理になるので利用していないしな...

今日のるびぃ ~ REx - Ruby Examination にチャレンジ (37) ~

REx - Ruby Examination の問題を自分なりにアレンジした上で 1 〜 3 問くらいずつ解いていく. 正直言ってかなり難しい. 尚, irb に動作確認環境は以下の通り.

$ ruby --version
ruby 2.1.10p492 (2016-04-01 revision 54464) [x86_64-linux]
$ irb --version
irb 0.9.6(09/06/30)

% 記法

実行結果にある結果を得るように __(1)__ に適したコードを選ぶ.

# コード
arr = __(1)__
arr.each do |i|
  p i
end

# 実行結果
apple
banana
orange

以下, 解答.

%w/apple banana orange/

以下, irb にて確認.

irb(main):001:0> arr = %w/apple banana orange/
=> ["apple", "banana", "orange"]
irb(main):002:0> arr.each do |i|
irb(main):003:1*   p i
irb(main):004:1> end
"apple"
"banana"
"orange"
=> ["apple", "banana", "orange"]
irb(main):005:0> 

以下, その他の選択肢について.

  • %a/ /: このような記法はありません
irb(main):005:0> %a/apple banana orange/
SyntaxError: (irb):5: unknown type of %string
  • %/ /: ダブルクォート文字列 (%Q/ /)
irb(main):001:0> %/apple banana orange/
=> "apple banana orange"
irb(main):032:0> %Q/apple banana orange/
=> "apple banana orange"
irb(main):002:0> %r/apple banana orange/
=> /apple banana orange/
irb(main):011:0> %/apple banana orange/.match(%r/apple/)
=> #<MatchData "apple">
irb(main):012:0> %/apple banana orange/.match(%r/banana/)
=> #<MatchData "banana">
irb(main):013:0> %/apple banana orange/.match(%r/orange/)
=> #<MatchData "orange">
  • %w/ /: 要素が文字列の配列
irb(main):031:0> %w/apple banana orange/
=> ["apple", "banana", "orange"]
irb(main):014:0> %w/apple banana \orange/
=> ["apple", "banana", "\\orange"]

その他の % 記法.

  • %W/ /: 要素が文字列の配列, 式展開, バックスラッシュ記法が有効
irb(main):031:0> %w/apple banana orange/
=> ["apple", "banana", "orange"]
irb(main):013:0> %W/apple banana \orange/
=> ["apple", "banana", "orange"]
  • %q/ /: シングルクォート文字列
irb(main):001:0> %q/apple banana orange/
=> "apple banana orange"

シングルクォートって書かれているけど, シングルクォートの出力を確認出来なかった...

  • %x/ /: コマンド出力 (コマンドを実行出来る)
irb(main):002:0> %x/date/
=> "2018年  6月 20日 水曜日 08:48:35 JST\n"
irb(main):003:0> %x/ruby --version/
=> "ruby 2.1.10p492 (2016-04-01 revision 54464) [x86_64-linux]\n"
irb(main):004:0> `ruby --version`
=> "ruby 2.1.10p492 (2016-04-01 revision 54464) [x86_64-linux]\n"
irb(main):005:0> `date`
=> "2018年  6月 20日 水曜日 08:49:44 JST\n"
  • %s/ /: シンボル
irb(main):006:0> %s/apple banana orange/
=> :"apple banana orange"
  • %i/ /: 要素がシンボルの配列 (空白区切り)
irb(main):008:0> %i/apple banana orange/
=> [:apple, :banana, :orange]
irb(main):014:0> %w/apple banana \orange/
=> ["apple", "banana", "\\orange"]
  • %I/ /: 要素がシンボルの配列 (空白区切り), 式展開, バックスラッシュ記法が有効
irb(main):009:0> %I/apple banana orange/
=> [:apple, :banana, :orange]
=> ["apple", "banana", "\\orange"]

フムフム.