# 塼ȥꥢ: ɽ
RubyǤɽȤΤ¿ѤޤɽȤΤʸΥѥɽΤǤ롼ˤäʸõȤΥ롼ɽΤȹͤƤ褤Ǥ礦ȤС"FOO"ǻϤޤä"R"ǽʸפȤ褦ʥ롼ǤʤߤˤΡ֥롼פɽɽϰʲΤ褦ˤʤޤ
/^FOO.*R$/
RubyǤ//˰Ϥޤ줿ʬɽǤ^ϡƬס$̣.*Ǥդʸ0İʾ¤Ӥ̣ޤ
ǤϡɽΥ롼νޤ礦ɽˤϾ褦̤ʰ̣ʸĤޤޤƤޤ
- [ ]
- ʸϰϻꡥ[a-z]azޤǤΤ줫
- \w
- ѿ[0-9A-Za-z_]Ʊ
- \W
- ѿ
- \s
- ʸ[ \t\n\r\f]Ʊ
- \S
- ʸ
- \d
- [0-9] Ʊ
- \D
- \b
- 춭ʸ(ϰϻ곰)
- \B
- 춭ʸ
- \b
- (0x08)(ϰϻ)
- *
- ľɽ0ʾη֤
- +
- ľɽ1ʾη֤
- {m,n}
- ľɽmnη֤
- ?
- ľɽ0ޤ1η֤
- |
- ( )
- ɽޤȤ
- ʳ
- ʸΤ
ȤС^f[a-z]+פϡfϤޤazޤǤʸη֤פǤꡤ"foobar""fool"ʤɤȰפޤΤפɽ(regular expression)ȸƤӤޤɽʸθλΩĤΤǡUNIXǤϤȻȤƤޤɽŪʤΤgrepȸƤФץǤ褯äˤʤäƤͤ⤤ΤǤϤʤǤ礦?
ɽȤˤĤ뤿ˡäȤץȤäƤߤޤ礦ʲΥץregx.rbȤ̾ǥ֤Ƽ¹ԤƤߤޤ
st = "\033[7m"
en = "\033[m"
while TRUE
print "str> "
STDOUT.flush
str = gets
break if not str
str.chop!
print "pat> "
STDOUT.flush
re = gets
break if not re
re.chop!
str.gsub! /#{re}/, "#{st}\\&#{en}"
print str, "\n"
end
print "\n"
ϺǽϤʸΤǡϤɽ˰פʬȿžɽץǤʲ˼¹ޤ
str> foobar
pat> ^fo+
foobar
^^^
# ºݤfooʬȿžƤ롥
Ƥߤޤ礦
str> abc012dbcd555 pat> \\d abc012dbcd555 ~~~ ~~~
ʬ褦ˤΥץʣΰײսФǤ褦ˤʤäƤޤ
str> foozboozer pat> f.*z foozboozer ~~~~~~~~
Ǥɽf.*zפfoozǤϤʤfoozbooz˥ޥåƤޤ͡ɽȤΤϤĹפ֤褦ˤʤäƤ뤫Ǥ
ɽǤϤȤƤҤȤǤϰ̣ʬʤ褦ʥѥȤǤޤѥȤƤΤޤޤŤꤹȸǤʤˤȤΤʬʤʤäƤޤ⤷ޤ
str> Wed Feb 7 08:58:04 JST 1996
pat> [0-9]+:[0-9]+(:[0-9]+)?
Wed Feb 7 08:58:04 JST 1996
~~~~~~~~
RubyΥץǤɽ`/'ǤäƵҤޤޤĤΥåɤʸɽ˼ưŪѴƤޤ
% ruby -le 'print "abcdef" =~ /d/' 3 % ruby -le 'print "aaaaaa" =~ /d/' nil
`=~'ɽӤԤ黻Ҥǡפ˰פ֤֤ޤ
ɤΤ褦ʥåɤɽȤ뤫ϥեޥ˥奢ȤƤ
Last update on February 22, 2004 16:48
Ruby