# list0602.rb # 正規表現 p /abc/ =~ '123abc456' # マッチング成功はマッチした文字列の番目を返す p /a[12]c/ =~ '123a1c456' # (a があり、1か2 があり、c があるか) p /^abc/ =~ '123abc456' # マッチング失敗は nil を返す p /a+bc/ =~ '123aaabc456' /(a+bc)/ =~ '123aaabc456' p $1 p /(a*)abc/ =~ '123aaabc456' p $1 x = $1 # マッチングの結果は変数に保存 p $' # マッチ部分以降の文字列 p /(?>a*)abc/ =~ '123aaabc456' # バックトラック無しだと。。。 p $1 p x # 元$1の内容は x が表している。 url = /^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/ url =~ 'http://www.ike.tottori-u.ac.jp/index.html#menu1' puts $2,$4,$5,$9