C:\Dokumente und Einstellungen\wolfgang>gem install oniguruma
Bulk updating Gem source index for: http://gems.rubyforge.org
Select which gem to install for your platform (i386-mswin32)
1. oniguruma 1.1.0 (ruby)
2. oniguruma 1.1.0 (mswin32)
3. oniguruma 1.0.1 (ruby)
4. oniguruma 1.0.1 (mswin32)
5. Skip this gem
6. Cancel installation
> 2
Successfully installed oniguruma-1.1.0-mswin32
Installing ri documentation for oniguruma-1.1.0-mswin32...
No definition for oregexp_initialize
Installing RDoc documentation for oniguruma-1.1.0-mswin32...
No definition for oregexp_initialize
C:\Dokumente und Einstellungen\wolfgang>
C:\Dokumente und Einstellungen\wolfgang>irb
irb(main):001:0> require 'rubygems'
=> false
irb(main):002:0> require 'oniguruma'
=> true
irb(main):003:0>
irb(main):004:0* class String
irb(main):005:1> def o
irb(main):006:2> Oniguruma::StringProxy.new self
irb(main):007:2> end
irb(main):008:1> def +@
irb(main):009:2> Oniguruma::ORegexp.new self
irb(main):010:2> end
irb(main):011:1> end
=> nil
irb(main):012:0>
irb(main):013:0* class Oniguruma::StringProxy < String
irb(main):014:1> def [] regexp
irb(main):015:2> regexp.match(self)[0]
irb(main):016:2> end
irb(main):017:1> end
=> nil
irb(main):018:0>
irb(main):019:0* reg = +'(?
.*)(a)(?.*)'
=> /(?.*)(a)(?.*)/
irb(main):020:0> match = reg.match 'terraforming'
=> #
irb(main):021:0> match[0] # => "terraforming"
=> "terraforming"
irb(main):022:0> match[:before] # => "terr"
=> "terr"
irb(main):023:0> match[:after] # => "forming"
=> "forming"
irb(main):024:0>
irb(main):025:0* 'terraforming'.o[+'(?.*)(a)(?.*)'] # => "terraforming"
=> "terraforming"
irb(main):026:0>
