2012-03-16 13 views
0

文字列内の整数を何とか読み込む必要があります。文字列は次のようになります。文字列内の整数を読み取る

GAME_SWITCH(476) 

そして、私は476の部分を読む必要があります。これは毎回476ではありませんが、毎回 "GAME_SWITCH(...)"になります。私は "GAME_SWITCH("と ")"を削除する.deleteメソッドを使用しようとしましたが、何らかの理由で効果がありません。私はちょうど整数に変換することができます "476"がほしいです。

さらに、文字列がそれらの規則に従っているかどうかを確認する方法もありますか?文字列が "foobar"の場合はfalseを返します。

私はRubyの1.8.1

どうもありがとうを使用しています!

答えて

0

あなたは、例えば、正規表現で問題を解決することができます:

if m = str.match(/^GAME_SWITCH\((\d+)\)$/) 
    m[1].to_i 
else 
    false 
end 
+0

はねえ、これは働いていたこのような何かを試してみてください!しかし、整数に正しく変換するには、 のような別の変数を使用する必要がありました。int = str [1] .to_i ありがとう! – HarryE

0

my_string.scan(/\d+/)[0].to_i
関連する問題