Memoize |
BasicWerk
EC Support
Technique
Facebook
|
20140815220451_ruby_regex |
ruby_regex
/.../ は正規表現リテラル。 > /^\d+/.match("123ggg") => #<MatchData "123"> # to_s メソッドでマッチ箇所を文字列化 > /^\d+/.match("123ggg").to_s => "123"
正規表現の中に / が頻発する場合は %r で任意のデリミタが使える。 > str = '<a href="http://basicwerk.com/memoize/" target="_blank">Memoize</a>' => "<a href=\"http://basicwerk.com/memoize/\" target=\"_blank\">Memoize</a>" > %r{http[^">'\s<]+}.match(str).to_s => "http://basicwerk.com/memoize/" > %r`>(.+?)<`.match(str) => #<MatchData ">Memoize<" 1:"Memoize"> # 単に to_s するとマッチ全体 > %r`>(.+?)<`.match(str).to_s => ">Memoize<" # キャプチャ箇所は [n]# で取り出す > %r`>(.+?)<`.match(str)[1]# => "Memoize"
http://docs.ruby-lang.org/ja/1.9.3/doc/spec=2fregexp.html
|
© Shin Nakamura/BasicWerk 2014 |