エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
rubyでグローバルマッチをするときはString#scanを使う。(修正) - 中野智文
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
rubyでグローバルマッチをするときはString#scanを使う。(修正) - 中野智文
perlなどでは正規表現のオプションで、"g"というグローバルマッチ(global match)のオプションがある。ru... perlなどでは正規表現のオプションで、"g"というグローバルマッチ(global match)のオプションがある。rubyにはそのようなオプションがないが、正規表現とString#scanを使うことで同様のコードを実現できる。 文字列.scan(/正規表現/) do |マッチした文字列| 処理… end下記はirbでの実行例。irb> 'This is the pen.'.scan(/th\w+/i){|m|p m} "This" "the" => "This is the pen." 2011/05/19修正: gsubを使うと書いたが、rochefort様の指摘通りString#scanの方がperlのwhileを使ったグローバルマッチに近い(gsubだとマッチした部分が消える)ので修正。