クラス
- Encoding (11)
-
Psych
:: Handler (11) -
Psych
:: Nodes :: Stream (33) -
Psych
:: Parser (11) -
Psych
:: Stream (22) -
Psych
:: Visitors :: YAMLTree (11) - StringScanner (33)
キーワード
- Emitter (11)
- NKF (11)
-
UTF
_ 8 _ HFS (11) - encoding= (11)
- getch (11)
- match? (11)
-
matched
_ size (11) - new (11)
-
ruby 1
. 8 . 2 feature (11) - start (33)
-
start
_ stream (11)
検索結果
先頭5件
-
Psych
:: Nodes :: Stream :: UTF8 -> Integer (21223.0) -
UTF8 エンコーディングを表します。
...UTF8 エンコーディングを表します。
Psych::Parser::UTF8 と同じ値です。
@see Psych::Nodes::Stream.new... -
Psych
:: Parser :: UTF8 -> Integer (21201.0) -
UTF-8 エンコーディングを表します。
...UTF-8 エンコーディングを表します。
@see Psych::Handler#start_stream... -
StringScanner
# matched _ size -> Integer | nil (12212.0) -
前回マッチした部分文字列の長さを返します。 前回マッチに失敗していたら nil を返します。
...nil を返します。
マッチしたサイズは文字単位でなくバイト単位となります。
//emlist[][ruby]{
require 'strscan'
def run(encode)
utf8 = "\u{308B 3073 3044}" # るびい
s = StringScanner.new(utf8.encode(encode))
s.scan(/#{"\u{308B}".encode(encode)}/)
s.matched......_size
end
p run("UTF-8") #=> 3
p run("EUC-JP") #=> 2
p run("Shift_Jis") #=> 2
//}
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.matched_size # => nil
s.scan(/\w+/) # => "test"
s.matched_size # => 4
s.scan(/\w+/) # => nil
s.matched_size # => nil
//}... -
Encoding
:: UTF _ 8 _ HFS -> Encoding (9217.0) -
UTF8-MAC、アップルによって修正された Normalization Form D(分解済み)という形式のUTF-8です。
...UTF8-MAC、アップルによって修正された Normalization Form D(分解済み)という形式のUTF-8です。
@see http://developer.apple.com/jp/technotes/tn1150.html,
http://developer.apple.com/jp/technotes/tn2078.html... -
StringScanner
# getch -> String | nil (9212.0) -
一文字スキャンして文字列で返します。 スキャンポインタをその後ろに進めます。 スキャンポインタが文字列の末尾を指すならnilを返します。
...指すならnilを返します。
一文字の定義は、与えた文字列のエンコードに依存します。
//emlist[例][ruby]{
require 'strscan'
utf8 = "\u{308B 3073 3044}"
s = StringScanner.new(utf8.encode("UTF-8"))
p s.getch # => "る"
p s.getch......# => "び"
p s.getch # => "い"
p s.getch # => nil
//}... -
StringScanner
# match?(regexp) -> Integer | nil (9212.0) -
スキャンポインタの地点だけで regexp と文字列のマッチを試します。 マッチしたら、スキャンポインタは進めずにマッチした 部分文字列の長さを返します。マッチしなかったら nil を 返します。
...ッチしなかったら nil を
返します。
マッチしたサイズは文字単位でなくバイト単位となります。
//emlist[][ruby]{
require 'strscan'
def case1(encode)
utf8 = "\u{308B 3073 3044}"
s = StringScanner.new(utf8.encode(encode))
s.match?(/#{"\u{308B}".encode(encode......)}/)
end
p case1("EUC-JP") #=> 2
//}
@param regexp マッチに用いる正規表現を指定します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
p s.match?(/\w+/) #=> 4
p s.match?(/\w+/) #=> 4
p s.match?(/\s+/) #=> nil
//}... -
Psych
:: Nodes :: Stream # encoding=(enc) (9106.0) -
stream に使われるエンコーディングを指定します。
...stream に使われるエンコーディングを指定します。
以下のいずれかを指定します。
* Psych::Nodes::Node::UTF8
* Psych::Nodes::Node::UTF16BE
* Psych::Nodes::Node::UTF16LE
@param enc 設定するエンコーディング
@see Psych::Nodes::Stream#encoding... -
Psych
:: Emitter (9006.0) -
Psych::Parser でパースし、生じたイベントから YAML ドキュメントを再構築するようなハンドラです。
...Psych::Parser でパースし、生じたイベントから
YAML ドキュメントを再構築するようなハンドラです。
以下の例では STDIN から YAML ドキュメントを入力し、
再構築した YAML ドキュメントを STDERR に出力します。
parser = Psych::Pars......Psych::Emitter.new($stderr))
parser.parse($stdin)
また、以下のようにイベントを手動で発生させることで
YAML ドキュメントを構築させることもできます。
各メソッドの意味については Psych::Handler を参照してください。
require 'psych'......require 'stringio'
output = StringIO.new
emitter = Psych::Emitter.new(output)
emitter.start_stream(Psych::Parser::UTF8)
emitter.start_document([1, 1], [], false)
emitter.start_mapping(nil, nil, false, Psych::Nodes::Mapping::BLOCK)
emitter.scalar("a", nil, nil, true, false, Psych::N... -
Psych
:: Visitors :: YAMLTree # start(encoding = Nodes :: Stream :: UTF8) -> Psych :: Nodes :: Stream (6307.0) -
Ruby オブジェクトから YAML AST への変換のための準備をします。
...ych::Visitors::YAMLTree#push が呼び出されたとき、
まだこのメソッドが呼び出されていなければ push メソッドがこの
メソッドを呼び出し、変換の準備をします。
encoding には以下のいずれかを指定できます。
* Psych::Nodes::Node::UTF8......* Psych::Nodes::Node::UTF16BE
* Psych::Nodes::Node::UTF16LE
@param encoding YAML AST に設定するエンコーディング... -
Psych
:: Nodes :: Stream . new(encoding = Psych :: Nodes :: Stream :: UTF8) -> Psych :: Nodes :: Stream (3407.0) -
Psych::Nodes::Stream オブジェクトを生成して返します。
...Psych::Nodes::Stream オブジェクトを生成して返します。
encoding には stream に使われるエンコーディングを指定します。
以下のいずれかを指定します。
* Psych::Nodes::Node::UTF8
* Psych::Nodes::Node::UTF16BE
* Psych::Nodes::Node::UTF16LE
@param......encoding エンコーディング...