別のキーワード
ライブラリ
- ビルトイン (154)
- psych (36)
-
rdoc
/ parser / ruby (12) - strscan (552)
- uri (48)
クラス
- Enumerator (54)
- Method (14)
- Proc (14)
-
Psych
:: ScalarScanner (12) -
Psych
:: Visitors :: YAMLTree (12) -
RDoc
:: Parser :: Ruby (12) - String (72)
- StringScanner (540)
モジュール
- URI (48)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - << (26)
- >> (14)
-
NEWS for Ruby 2
. 7 . 0 (6) - ScalarScanner (12)
- StringScanner (12)
- Version (12)
- [] (12)
-
beginning
_ of _ line? (12) - bol? (12)
- charpos (12)
- check (12)
-
check
_ until (12) - clear (12)
- concat (12)
- each (48)
- empty? (12)
- eos? (12)
- exist? (12)
- extract (48)
-
get
_ byte (12) - getbyte (12)
- getch (12)
- gsub (48)
- inspect (12)
- match? (12)
- matched (12)
- matched? (12)
-
matched
_ size (12) - new (24)
- peek (12)
- peep (12)
- pointer (12)
- pointer= (12)
- pos (12)
- pos= (12)
-
post
_ match (12) -
pre
_ match (12) - produce (6)
-
rb
_ define _ method (12) -
rb
_ scan _ args (12) - reset (12)
- rest (12)
- rest? (12)
-
rest
_ size (12) - restsize (12)
-
ruby 1
. 8 . 4 feature (12) -
ruby 1
. 9 feature (12) -
scan
_ full (12) -
scan
_ until (12) -
search
_ full (12) - skip (12)
-
skip
_ until (12) - string (12)
- string= (12)
- terminate (12)
- tokenize (12)
- unscan (12)
- xmlrpc (3)
検索結果
先頭5件
-
StringScanner
# scan(regexp) -> String | nil (21137.0) -
スキャンポインタの地点だけで regexp と文字列のマッチを試します。 マッチしたら、スキャンポインタを進めて正規表現にマッチした 部分文字列を返します。マッチしなかったら nil を返します。
...す。
@param regexp マッチに用いる正規表現を指定します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
p s.scan(/\w+/) #=> "test"
p s.scan(/\w+/) #=> nil
p s.scan(/\s+/) #=> " "
p s.scan(/\w+/) #=> "string"
p s.scan(/./) #=> nil
//}... -
RDoc
:: Parser :: Ruby # scan -> RDoc :: TopLevel (21117.0) -
Ruby のソースコードからクラス/モジュールのドキュメントを解析します。
...
Ruby のソースコードからクラス/モジュールのドキュメントを解析します。
@return RDoc::TopLevel オブジェクトを返します。... -
String
# scan(pattern) -> [String] | [[String]] (18142.0) -
self に対して pattern を繰り返しマッチし、 マッチした部分文字列の配列を返します。
...[例][ruby]{
p "foobar".scan(/../) # => ["fo", "ob", "ar"]
p "foobar".scan("o") # => ["o", "o"]
p "foobarbazfoobarbaz".scan(/ba./) # => ["bar", "baz", "bar", "baz"]
p "foobar".scan(/(.)/) # => [["f"], ["o"], ["o"], ["b"], ["a"], ["r"]]
p "foobarbazfoobarbaz".scan(/(ba... -
String
# scan(pattern) {|s| . . . } -> self (18132.0) -
pattern がマッチした部分文字列をブロックに渡して実行します。 pattern が正規表現で括弧を含む場合は、 括弧で括られたパターンにマッチした文字列の配列を渡します。
...する部分文字列または正規表現
//emlist[例][ruby]{
"foobarbazfoobarbaz".scan(/ba./) {|s| p s }
# "bar"
# "baz"
# "bar"
# "baz"
"foobarbazfoobarbaz".scan("ba") {|s| p s }
# "ba"
# "ba"
# "ba"
# "ba"
"foobarbazfoobarbaz".scan(/(ba)(.)/) {|s| p s }
# ["ba", "r"]
# ["ba", "z"]
# ["ba", "... -
StringScanner
# scan _ full(regexp , s , f) -> object (9173.0) -
スキャンポインタの位置から regexp と文字列のマッチを試します。
...ます。
* scan_full(regexp, true, true) は StringScanner#scan と同等。
* scan_full(regexp, true, false) は StringScanner#skip と同等。
* scan_full(regexp, false, true) は StringScanner#check と同等。
* scan_full(regexp, false, false) は StringScanner#match? と同......ます。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
p s.scan_full(/\w+/, true, true) #=> "test"
p s.scan_full(/\s+/, false, true) #=> " "
p s.scan_full(/\s+/, true, false) #=> 1
p s.scan_full(/\w+/, false, false) #=> 6
p s.scan_full(/\w+/, true, true)......#=> "string"
//}
@see StringScanner#scan StringScanner#skip StringScanner#check StringScanner#match?... -
StringScanner
# unscan -> self (9142.0) -
スキャンポインタを前回のマッチの前の位置に戻します。
...][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.scan(/\w+/) # => "test"
s.unscan
s.scan(/\w+/) # => "test"
//}
@return selfを返します。
このメソッドでポインタを戻せるのは 1 回分だけです。
2 回分以上戻そうとしたときは例外 StringScanne......gScanner::Error が発生します。
@raise StringScanner::Error 2 回分以上戻そうとした時や、
まだマッチを一度も行っていない時、
前回のマッチが失敗していた時に発生します。
//emlist[例][ruby......ire 'strscan'
s = StringScanner.new('test string')
begin
# マッチを一度も行っていないので、例外が発生する。
s.unscan
rescue StringScanner::Error => err
puts err
# 出力例
#=> unscan failed: previous match had failed
end
p s.scan(/\w+/) # => "test"
s.unscan
begin... -
StringScanner
# scan _ until(regexp) -> String | nil (9113.0) -
regexp で指定された正規表現とマッチするまで文字列をスキャンします。 マッチに成功したらスキャンポインタを進めて、 スキャン開始位置からマッチ部分の末尾までの部分文字列を返します。 マッチに失敗したら nil を返します。
...たら nil を返します。
@param regexp マッチに用いる正規表現を指定します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.scan_until(/str/) # => "test str"
s.matched # => "str"
s.pos # => 8
s.pre_match # => "te... -
StringScanner (6246.0)
-
StringScanner は文字列スキャナクラスです。 簡単に高速なスキャナを記述できます。
...tringScanner は文字列スキャナクラスです。
簡単に高速なスキャナを記述できます。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('This is an example string')
s.eos? #=> false
p s.scan(/\w+/) #=> "This"
p s.scan(/\w+/) #=> nil
p s.scan(/\s+......" "
p s.scan(/\s+/) #=> nil
p s.scan(/\w+/) #=> "is"
s.eos? #=> false
p s.scan(/\s+/) #=> " "
p s.scan(/\w+/) #=> "an"
p s.scan(/\s+/) #=> " "
p s.scan(/\w+/) #=> "example"
p s.scan(/\s+/) #=> " "
p s.scan(/\w+/) #=> "string"
s.eos? #=> true
p s.scan(/\s+/)......#=> nil
p s.scan(/\w+/) #=> nil
//}
StringScanner オブジェクトはスキャンする文字列と「スキャンポインタ」のセットです。
スキャンポインタとはスキャンしおわったところを示すインデックスのことです。
オブジェクト作成直後... -
int rb
_ scan _ args(int argc , const VALUE *argv , const char *fmt , . . . ) (6142.0) -
長さ argc の配列 argv を fmt に従って 解析し、第四引数以降で渡されたアドレスに書き込みます。
...引数の数 (省略可能な引数があるなら省略不可)
* 省略可能な引数の数 (ゼロ個ならば省略可)
* 残りの引数を Ruby の配列として受け取ることを示す '*' (省略可)
* 最後の引数をオプションハッシュとして受け取る事を示す '......LUE a, b, optv;
rb_scan_args(argc, argv, "21", &a, &b, &optv);
対応する Ruby プログラムでの宣言
def some_method(a, b, opt = nil)
使用例 (2)
VALUE a, rest, block;
rb_scan_args(argc, argv, "1*&", &a, &rest, &block);
対応する Ruby プログラムでの......宣言
def some_method(a, *rest, &block)
@see https://github.com/ruby/ruby/blob/master/doc/extension.ja.rdoc...