fc2ブログ

Exerb 正規表現

またExerbでハマりました。
忘れないうちにメモ。

やりたいこと。

"abc123" =~ /([0-9]*)/
p $1 # => "123"




普通に考えてこれは実行できるし、ターミナルで実行したところ、欲しいものを返してくれました。
しかし、このコードをexerbでコンパイルしようとするとmkexyすると、"123"ではなくnilが出力される。

いろいろ試行錯誤したんですが、面倒なので結果だけ書くと、

p "abc123".slice(/[0-9]*/,1)



で無事出力できました。

原因はよくわかりません。
教えてエロい人。

ちなみに、"abc123" =~ /([0-9]*)/ でマッチさせると、3が帰ってくるし、if文等の分岐では正常に動いていたので、正規表現というよりはキャプチャの問題みたいです。

if文でマッチするかどうか評価してそのままキャプチャしたかったので、コードが少し冗長になってしまいますが、とりあえず動くので良しとします。

ダックタイピングどころか、"羽がついてたら鳥なんじゃね?"くらいの気持ちで書いてます。
ばーどたいぴんぐ!

コメントの投稿

非公開コメント

カレンダー
02 | 2024/03 | 04
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31 - - - - - -
検索フォーム
カテゴリ
月別アーカイブ
最新記事
最新コメント
最新トラックバック
RSSリンクの表示
QRコード
QR
リンク
アクセス解析