Regex#to_s
パターンでオプションを無効にする方法を確認するために遊んでいました%r/../
。しかし、そのような出力と混同されますRegex#to_s
:
irb(main):005:0> %r/ab+c/x.to_s
=> "(?x-mi:ab+c)" #why here -m option has been disabled?
irb(main):006:0> %r/ab+c/i.to_s
=> "(?i-mx:ab+c)" #why here -m option has been disabled?
irb(main):007:0> %r/ab+c/m.to_s
=> "(?m-ix:ab+c)" #why here -i option has been disabled?
irb(main):008:0> %r/ab+c/o.to_s
=> "(?-mix:ab+c)" #why here o option not get into the (...) as the above?
irb(main):009:0> %r/ab+c/.to_s
=> "(?-mix:ab+c)" #why always m,i,x option get into the (...) as the above?
オプションがオン/オフするベースのロジックを理解するために、誰かがここで私を助けてくれますか?
Regex#hash
およびRegex#quote
メソッドはRuby1.9.3でどのように機能しますか(同じことを理解するための小さなコード)?