ライブラリ
- ビルトイン (71)
- pathname (22)
-
ripper
/ lexer (22)
検索結果
先頭5件
-
Enumerator
. produce(initial = nil) { |prev| . . . } -> Enumerator (6219.0) -
与えられたブロックを呼び出し続ける、停止しない Enumerator を返します。 ブロックの戻り値が、次にブロックを呼び出す時に引数として渡されます。 initial 引数が渡された場合、最初にブロックを呼び出す時にそれがブロック 呼び出しの引数として渡されます。initial が渡されなかった場合は nil が 渡されます。
...与えられたブロックを呼び出し続ける、停止しない Enumerator を返します。
ブロックの戻り値が、次にブロックを呼び出す時に引数として渡されます。
initial 引数が渡された場合、最初にブロックを呼び出す時にそれがブロ......ロックが例外 StopIterationを投げた場合、繰り返しが終了します。
@param initial ブロックに最初に渡される値です。任意のオブジェクトを渡せます。
//emlist[例][ruby]{
# 1, 2, 3, 4, ... と続く Enumerator
Enumerator.produce(1, &:succ)
# next を......Enumerator
Enumerator.produce { rand(10) }
# ツリー構造の祖先ノードを列挙する Enumerator
ancestors = Enumerator.produce(node) { |prev| node = prev.parent or raise StopIteration }
enclosing_section = ancestors.find { |n| n.type == :section }
//}
このメソッドは Enumerable の... -
Ripper
. token _ match(src , pattern) -> Ripper :: TokenPattern :: MatchData | nil (3418.0) -
Ruby プログラム src に対してパターン pattern をマッチし、 マッチデータを返します。
...
Ruby プログラム src に対してパターン pattern をマッチし、
マッチデータを返します。
ライブラリ内部で使用します。... -
Regexp
. union(*pattern) -> Regexp (3376.0) -
引数として与えた pattern を選択 | で連結し、Regexp として返します。 結果の Regexp は与えた pattern のどれかにマッチする場合にマッチするものになります。
...として与えた pattern を選択 | で連結し、Regexp として返します。
結果の Regexp は与えた pattern のどれかにマッチする場合にマッチするものになります。
//emlist[][ruby]{
p Regexp.union(/a/, /b/, /c/) # => /(?-mix:a)|(?-mix:b)|(?-mix:c)/
//}
引数......Array を与えても Regexp を生成します。
つまり、以下のように書くことができます。
//emlist[][ruby]{
arr = [/a/, /b/, /c/]
p Regexp.union(arr) # => /(?-mix:a)|(?-mix:b)|(?-mix:c)/
# 1.8.7 より前は、以下のように書く必要があった
p Regexp.union(*arr) #......=> /(?-mix:a)|(?-mix:b)|(?-mix:c)/
//}
pattern は Regexp または String で与えます。
String で与えた場合、それ自身と等しい文字列にマッチするものと解釈され、
エスケープされて結果の Regexp に組み込まれます。
//emlist[][ruby]{
p Regexp.unio... -
Ripper
. slice(src , pattern , n = 0) -> String | nil (3348.0) -
Ruby プログラム src のうち、 パターン pattern の n 番目の括弧にマッチする文字列を取り出します。
...
Ruby プログラム src のうち、
パターン pattern の n 番目の括弧にマッチする文字列を取り出します。
マッチしない場合は nil を返します。
@param src Ruby プログラムを文字列か IO オブジェクトで指定します。
@param pattern 取り......@param n pattern で指定した文字列の内、n 番目の括弧の中の文字列だけが必
要な時に指定します。省略すると 0 (pattern 全体)になります。
pattern は Ripper のイベント ID のリストを文字列で記述します。
また pattern には Rub......単位ではなくトークン単位で動作します。
使用例
require 'ripper'
p Ripper.slice(%(<<HERE\nstring\#{nil}\nHERE),
"heredoc_beg .*? nl $(.*?) heredoc_end", 1)
# => "string\#{nil}\n"
イベント ID は Ripper::SCANNER_EVENTS で確認できます。... -
Dir
. [](*pattern) -> [String] (3310.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
...ときはワイルドカードにマッチしたファイルを
引数にそのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。......。
@param flags File.fnmatch に指定できるフラグと同様のフラグを指定できます。
このフラグを指定することでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*",......File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
ワイルドカードには以下のものがあります。これらはバックスラッシュに
よりエスケープすることができます。ダブルクォートの文字列中では 2
重にエスケープする必要があるこ... -
Dir
. [](*pattern , base: nil) -> [String] (3310.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
...ときはワイルドカードにマッチしたファイルを
引数にそのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。......。
@param flags File.fnmatch に指定できるフラグと同様のフラグを指定できます。
このフラグを指定することでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*",......File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にするベースディレクトリを指定します。
指定した場合、結果の頭にはベースディレクトリはつかないので、......そのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。
@param flags File.fnmatch に指定できるフラグと同様のフラグを......ることでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*", File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にする......の文字列と一致します。
: ?
任意の一文字と一致します。
: [ ]
鈎括弧内のいずれかの文字と一致します。- でつな
がれた文字は範囲を表します。鈎括弧の中の最初の文字が
^ である時には含まれない文字と一致... -
Dir
. [](*pattern , base: nil , sort: true) -> [String] (3310.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
...そのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。
@param flags File.fnmatch に指定できるフラグと同様のフラグを......ることでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*", File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にする......ょう。
@param sort true ならワイルドカードや文字セット(鈎括弧)にマッチした結果を
バイナリとして昇順にソートします。
false を指定するとソートせず2.7以前と同じ挙動になります。
true の場合で......することでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*", File::FNM_DOTMATCH) #=> [".", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にするベ... -
Dir
. glob(pattern , flags = 0) -> [String] (3310.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
...ときはワイルドカードにマッチしたファイルを
引数にそのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。......。
@param flags File.fnmatch に指定できるフラグと同様のフラグを指定できます。
このフラグを指定することでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*",......File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
ワイルドカードには以下のものがあります。これらはバックスラッシュに
よりエスケープすることができます。ダブルクォートの文字列中では 2
重にエスケープする必要があるこ... -
Dir
. glob(pattern , flags = 0) {|file| . . . } -> nil (3310.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
...ときはワイルドカードにマッチしたファイルを
引数にそのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。......。
@param flags File.fnmatch に指定できるフラグと同様のフラグを指定できます。
このフラグを指定することでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*",......File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
ワイルドカードには以下のものがあります。これらはバックスラッシュに
よりエスケープすることができます。ダブルクォートの文字列中では 2
重にエスケープする必要があるこ... -
Dir
. glob(pattern , flags = 0 , base: nil) -> [String] (3310.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
...ときはワイルドカードにマッチしたファイルを
引数にそのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。......。
@param flags File.fnmatch に指定できるフラグと同様のフラグを指定できます。
このフラグを指定することでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*",......File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にするベースディレクトリを指定します。
指定した場合、結果の頭にはベースディレクトリはつかないので、......そのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。
@param flags File.fnmatch に指定できるフラグと同様のフラグを......ることでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*", File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にする......の文字列と一致します。
: ?
任意の一文字と一致します。
: [ ]
鈎括弧内のいずれかの文字と一致します。- でつな
がれた文字は範囲を表します。鈎括弧の中の最初の文字が
^ である時には含まれない文字と一致... -
Dir
. glob(pattern , flags = 0 , base: nil) {|file| . . . } -> nil (3310.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
...ときはワイルドカードにマッチしたファイルを
引数にそのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。......。
@param flags File.fnmatch に指定できるフラグと同様のフラグを指定できます。
このフラグを指定することでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*",......File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にするベースディレクトリを指定します。
指定した場合、結果の頭にはベースディレクトリはつかないので、......そのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。
@param flags File.fnmatch に指定できるフラグと同様のフラグを......ることでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*", File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にする......の文字列と一致します。
: ?
任意の一文字と一致します。
: [ ]
鈎括弧内のいずれかの文字と一致します。- でつな
がれた文字は範囲を表します。鈎括弧の中の最初の文字が
^ である時には含まれない文字と一致... -
Dir
. glob(pattern , flags = 0 , base: nil , sort: true) -> [String] (3310.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
...そのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。
@param flags File.fnmatch に指定できるフラグと同様のフラグを......ることでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*", File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にする......ょう。
@param sort true ならワイルドカードや文字セット(鈎括弧)にマッチした結果を
バイナリとして昇順にソートします。
false を指定するとソートせず2.7以前と同じ挙動になります。
true の場合で......することでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*", File::FNM_DOTMATCH) #=> [".", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にするベ... -
Dir
. glob(pattern , flags = 0 , base: nil , sort: true) {|file| . . . } -> nil (3310.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
...そのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。
@param flags File.fnmatch に指定できるフラグと同様のフラグを......ることでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*", File::FNM_DOTMATCH) #=> [".", "..", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にする......ょう。
@param sort true ならワイルドカードや文字セット(鈎括弧)にマッチした結果を
バイナリとして昇順にソートします。
false を指定するとソートせず2.7以前と同じ挙動になります。
true の場合で......することでマッチの挙動を変更することができます。
//emlist[][ruby]{
Dir.glob("*") #=> ["bar", "foo"]
Dir.glob("*", File::FNM_DOTMATCH) #=> [".", "bar", "foo"]
//}
@param base カレントディレクトリの代わりに相対パスの基準にするベ... -
File
. fnmatch(pattern , path , flags = 0) -> bool (325.0) -
ファイル名のパターンマッチ fnmatch(3) を行います。 path が pattern にマッチすれば真を返します。そうでない場合には false を返します。
...。
path が pattern にマッチすれば真を返します。そうでない場合には false を返します。
@param pattern パターンを文字列で指定します。ワイルドカードとして `*',
`?', `[]', `{}' が使用できます。
Dir.glob とは......違って `**/' は使用できません。
//emlist[例][ruby]{
%w(foo foobar bar).each {|f|
p File.fnmatch("foo*", f)
}
# => true
# true
# false
//}
@param path パスを表す文字列を指定します。
@param flags パターンマッチの動作を以下で述べる定数の論理......扱われます。
//emlist[][ruby]{
p File.fnmatch('\a', 'a') # => true
p File.fnmatch('\a', '\a', File::FNM_NOESCAPE) # => true
//}
前者で * は、エスケープされているので "*" そのものにマッチ
します。
//emlist[][ruby]{
p File.fnmatch('\*', 'a')... -
File
. fnmatch?(pattern , path , flags = 0) -> bool (325.0) -
ファイル名のパターンマッチ fnmatch(3) を行います。 path が pattern にマッチすれば真を返します。そうでない場合には false を返します。
...。
path が pattern にマッチすれば真を返します。そうでない場合には false を返します。
@param pattern パターンを文字列で指定します。ワイルドカードとして `*',
`?', `[]', `{}' が使用できます。
Dir.glob とは......違って `**/' は使用できません。
//emlist[例][ruby]{
%w(foo foobar bar).each {|f|
p File.fnmatch("foo*", f)
}
# => true
# true
# false
//}
@param path パスを表す文字列を指定します。
@param flags パターンマッチの動作を以下で述べる定数の論理......扱われます。
//emlist[][ruby]{
p File.fnmatch('\a', 'a') # => true
p File.fnmatch('\a', '\a', File::FNM_NOESCAPE) # => true
//}
前者で * は、エスケープされているので "*" そのものにマッチ
します。
//emlist[][ruby]{
p File.fnmatch('\*', 'a')... -
Pathname
. glob(pattern , flags=0) -> [Pathname] (309.0) -
ワイルドカードの展開を行なった結果を、 Pathname オブジェクトの配列として返します。
...ワイルドカードの展開を行なった結果を、
Pathname オブジェクトの配列として返します。
引数の意味は、Dir.glob と同じです。 flag の初期値である 0 は「何
も指定しない」ことを意味します。
ブロックが与えられたときは......@param pattern ワイルドカードパターンです
@param flags パターンマッチ時のふるまいを変化させるフラグを指定します
//emlist[][ruby]{
require "pathname"
Pathname.glob("lib/i*.rb") # => [#<Pathname:lib/ipaddr.rb>, #<Pathname:lib/irb.rb>]
//}
@see Dir.glob......@param pattern ワイルドカードパターンです
@param flags パターンマッチ時のふるまいを変化させるフラグを指定します
//emlist[][ruby]{
require "pathname"
Pathname.glob("lib/i*.rb") # => [#<Pathname:lib/ipaddr.rb>, #<Pathname:lib/irb.rb>]
//}
@see Dir.glob
@s...