前置き
ワンライナー
手元で〜 Ruby ワンライナー 入門 #Ruby - Qiita
準備
- たまに使うもの
-
%q
- ワンライナーを書いていると,
'
(シングルクォート) や"
(ダブルクォート) と戦うことになる. - 戦いを回避するのに,
%
記法を使ったりする.1
- ワンライナーを書いていると,
-
;
- 既に使っているが行を区切るのに使う.使わなくてもいい.
-
Hash.new(0)
- 初期値指定.集計するときに使ったりする.
-
BEGIN{h=Hash.new(0)};k,v=$F;h[k]+=v.to_i;END{h.each{|k,v|puts [k,v].join(" ")}}
みたいな - 同一オブジェクトらしいので注意が必要
-
Hash.new{|h,k|h[k]=[]}
- ネストしたデータを作る
- 条件演算子
-
&&
||
-
and
or
-
? :
if then else end
-
-
- パースする
- JSON
JSON.parse(str)
- CSV
CSV.parse(str)
- 正規表現
m = /(\d+)/.match(str)
- JSON
Refs
-
戦ってもいい.
例えば,$ ruby -e 'puts "print a single quote"; puts "'"'"'"; puts "Finished!"'
↩