🖥

#Ruby の正規表現置換でマッチ結果に対してメソッド実行する ( 例: 小文字を大文字にする例 )

2023/09/01に公開
  • カッコを使ってキャプチャする
  • gsub + ブロック記法で マッチ結果に対して好きなメソッドを実行できる
"ab cd ef".gsub(/(ab|ef)/) { "#{$1.upcase}" }
# => "AB cd EF"

Bad Case

ブロックでないと、複数個のマッチ結果がある場合に、置換結果が全て同じものになってしまう

"ab cd ef".gsub(/(ab|ef)/, "#{$1.upcase}")
# "EF cd EF"

参考

How to change case of letters in string using RegEx in Ruby - Stack Overflow

Original by Github issue

https://github.com/YumaInaura/YumaInaura/issues/3169

チャットメンバー募集

何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。

https://line.me/ti/g2/eEPltQ6Tzh3pYAZV8JXKZqc7PJ6L0rpm573dcQ

Twitter

https://twitter.com/YumaInaura

公開日時

2020-05-26

Discussion