Caution
お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。
文字列.to_i / to_f / to_sym / inspect
文字列を整数・浮動小数点数・シンボルなどの他の型に変換するメソッドです。
構文
# 文字列を整数に変換します。 文字列.to_i 文字列.to_i(基数) # 2〜36進数として解釈します。 # 文字列を浮動小数点数に変換します。 文字列.to_f # 文字列をシンボルに変換します。 文字列.to_sym # 文字列のデバッグ表示(引用符や特殊文字を含む)を返します。 文字列.inspect
メソッド一覧
| メソッド | 概要 |
|---|---|
| to_i | 文字列を10進整数に変換します。先頭から変換できる部分だけを数値として解釈し、変換できない場合は0を返します。 |
| to_i(base) | 指定した基数(2進数・16進数など)として文字列を解釈して整数に変換します。 |
| to_f | 文字列を浮動小数点数に変換します。変換できない場合は0.0を返します。 |
| to_sym | 文字列をシンボルに変換します。ハッシュのキーや識別子として使われます。 |
| inspect | 文字列を引用符や特殊文字のエスケープを含むデバッグ用表現で返します。 |
サンプルコード
# 文字列から整数に変換します。 puts "42".to_i # 42 puts "3.14".to_i # 3(小数点以下は切り捨て) puts "123abc".to_i # 123(数値以外の文字で停止) puts "abc".to_i # 0(変換できない場合は0) # 基数を指定して変換します。 puts "ff".to_i(16) # 255(16進数として解釈) puts "1010".to_i(2) # 10(2進数として解釈) # 文字列から浮動小数点数に変換します。 puts "3.14".to_f # 3.14 puts "1.5e2".to_f # 150.0(指数表記も対応) puts "abc".to_f # 0.0 # シンボルに変換します。 キー = "name" シンボル = キー.to_sym puts シンボル # name puts シンボル.class # Symbol # inspect で文字列の内部表現を確認します。 テキスト = "Hello\nWorld" puts テキスト # Hello(改行)World puts テキスト.inspect # "Hello\nWorld"(エスケープ表示)
概要
Rubyの型変換メソッドは寛容な設計になっており、変換できない文字列に対しても例外を発生させずに0や0.0を返します。厳密な変換が必要な場合(変換できない文字列でエラーにしたい場合)は、Kernel#『Integer()』や『Float()』メソッドを使用してください。これらは変換できない場合に『ArgumentError』を発生させます。
シンボルは文字列に似ていますが、同じ内容のシンボルはメモリ上で1つしか生成されないため、ハッシュのキーや識別子として効率的です。シンボルを文字列に戻すには『Symbol#to_s』を使用します。
文字列フォーマットについては『sprintf() / % 演算子』を、エンコーディング変換については『encoding / encode』を使用してください。
記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。