Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

Ruby | Kernel | gsub

概要

Kernel#gsub(pattern, replace) -> String
Kernel#gsub(pattern) {|matched| ... } -> String
Kernel#gsub(pattern) -> Enumerator

詳細

$_.gsubとほぼ同じでKernel.#gets または Kernel.#readlineで読み込んだ文字列に対する置換操作。
破壊的に動作するため、$_の内容を置き換える。
$_.gsubのほうの利用が推奨されている。

サンプルコード
$ echo {a..f} | tr ' ' '\n' | ruby -p -e "gsub /(\w)/, '@\1@'"
@a@
@b@
@c@
@d@
@e@
@f@

$ echo {a..f} | tr ' ' '\n' | ruby -p -e "gsub(/(\w)/) { |v|v.upcase }"
A
B
C
D
E
F