要約
String#scan のフォーマット指定版といえるメソッド String#scanf を定義します。
例
require 'scanf' p "a 10 1.2". scanf("%s %d %f") # => ["a", 10, 1.2] p "a 10 1.2 b 20 1.5e10".scanf("%s %d %f") # => ["a", 10, 1.2] p "a 10 1.2 b 20 1.5e10".scanf("%s %d %f") {|*v| v} # => [["a", 10, 1.2], ["b", 20, 15000000000.0]] p "a 10 1.2 b 20 1.5e10 c".scanf("%s %d %f") {|*v| v} # => [["a", 10, 1.2], ["b", 20, 15000000000.0], [["c"]]] # [["c"]] (?) require 'scanf' p "a, 10, 1.2".scanf("%s,%d,%f") # => ["a,"] %s が "," を飲み込むからダメらしい p "a, 10, 1.2".scanf("%1s,%d,%f") # => ["a", 10, 1.2] p "a, 10, 1.2".scanf("%[^,],%d,%f") # => ["a", 10, 1.2]
クラス
Scanf::FormatSpecifier | |
Scanf::FormatString |
モジュール
Scanf | scanf ライブラリで使用する名前空間です。 |