ライブラリ
- ビルトイン (811)
- abbrev (24)
- csv (3)
- date (4)
- expect (24)
-
irb
/ cmd / help (12) - mkmf (24)
- pathname (88)
- rake (144)
-
rake
/ testtask (36) -
rdoc
/ markup (12) -
rinda
/ rinda (12) -
rinda
/ tuplespace (12) -
ripper
/ lexer (24) - rubygems (12)
-
rubygems
/ source _ index (12) -
rubygems
/ source _ info _ cache (24) - shell (6)
-
shell
/ builtin-command (6) -
shell
/ command-processor (6) -
shell
/ filter (6) - shellwords (24)
クラス
- Array (99)
-
CSV
:: Row (3) - Data (6)
- Date (2)
- DateTime (2)
- Dir (36)
- Enumerator (6)
-
Enumerator
:: Lazy (80) - File (24)
-
Gem
:: SourceIndex (12) -
Gem
:: SourceInfoCache (24) - IO (24)
-
IRB
:: ExtendCommand :: Help (12) - MatchData (6)
- Pathname (88)
-
RDoc
:: Markup (12) -
Rake
:: Application (12) -
Rake
:: FileList (96) -
Rake
:: TestTask (36) - Regexp (12)
-
Rinda
:: TupleSpace (12) -
Rinda
:: TupleSpaceProxy (12) - Ripper (24)
- Shell (6)
-
Shell
:: CommandProcessor (6) -
Shell
:: Filter (6) -
Shell
:: Glob (6) - String (282)
- Struct (24)
- Time (2)
モジュール
- Abbrev (12)
- Enumerable (192)
- FileUtils (12)
- Gem (12)
- Kernel (84)
- Rake (12)
- Shellwords (24)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) -
DEFAULT
_ IGNORE _ PATTERNS (12) -
NEWS for Ruby 2
. 7 . 0 (6) -
NEWS for Ruby 3
. 0 . 0 (5) - NoMatchingPatternError (6)
-
WIN
_ PATTERNS (12) - [] (12)
- abbrev (24)
-
add
_ special (12) - all? (45)
- any? (48)
- application= (12)
- byteindex (3)
- byterindex (3)
- captures (2)
- deconstruct (11)
-
deconstruct
_ keys (20) - egrep (12)
-
egrep
_ cpp (24) - exclude (12)
- execute (12)
- expect (24)
- fnmatch (24)
- fnmatch? (24)
- glob (82)
- grep (36)
-
grep
_ v (34) - gsub (96)
- gsub! (60)
- index (12)
- irb (12)
- new (18)
- none? (45)
- notify (24)
- one? (45)
-
pathmap
_ replace (12) - pattern= (12)
- produce (6)
- rake (12)
- rdoc (12)
- rindex (12)
-
ruby 1
. 8 . 4 feature (12) - scan (24)
- search (24)
-
search
_ with _ source (12) - sh (12)
- shellescape (12)
- shelljoin (12)
- slice (12)
-
slice
_ after (46) -
slice
_ before (60) - sub (96)
- sub! (48)
-
test
_ files= (12) -
to
_ a (6) -
token
_ match (12) - tr (12)
- tr! (12)
-
tr
_ s (12) -
tr
_ s! (12) - union (12)
- values (6)
- パターンマッチ (12)
- 制御構造 (12)
- 正規表現 (12)
検索結果
先頭5件
-
Rake
:: TestTask # pattern -> String (24201.0) -
テストファイルにマッチする glob パターンを返します。
テストファイルにマッチする glob パターンを返します。
デフォルトは 'test/test*.rb' です。 -
NoMatchingPatternError (18000.0)
-
パターンマッチでどの条件にも一致せず、else節もない場合に発生します。
パターンマッチでどの条件にも一致せず、else節もない場合に発生します。 -
Rake
:: TestTask # pattern=(pattern) (12402.0) -
テストファイルにマッチする glob パターンを指定します。
テストファイルにマッチする glob パターンを指定します。 -
Gem
:: WIN _ PATTERNS -> Array (12200.0) -
Windows 上で動いている Ruby を識別するための正規表現の配列。
Windows 上で動いている Ruby を識別するための正規表現の配列。 -
Rake
:: FileList :: DEFAULT _ IGNORE _ PATTERNS -> Array (12200.0) -
デフォルトで除外するパターンのリストです。
デフォルトで除外するパターンのリストです。 -
パターンマッチ (9628.0)
-
パターンマッチ * patterns * variable_binding * variable_pinning * matching_non_primitive_objects * guard_clauses * current_feature_status * pattern_syntax * some_undefined_behavior_examples
...パターンマッチ
* patterns
* variable_binding
* variable_pinning
* matching_non_primitive_objects
* guard_clauses
* current_feature_status
* pattern_syntax
* some_undefined_behavior_examples
パターンマッチは、構造化された値に対して、構造をチェック......<expression> in <pattern>
case 文の中で利用できます。
case <expression>
in <pattern1>
...
in <pattern2>
...
in <pattern3>
...
else
...
end
in 節と when 節は1つの case 式の中に混ぜて書くことはできません。
case/in 式は 「網羅......case 式の値がどの節にもマッチせず else 節がない場合、例外 NoMatchingPatternError が発生します。
そのため、条件付きのマッチや展開に case 式が使われることがあります。
//emlist[][ruby]{
config = {db: {user: 'admin', password: 'abc123'}}
ca......りません)
Rubyでのパターンマッチは case/in 式を用いて実装されています。
case <expression>
in <pattern1>
...
in <pattern2>
...
in <pattern3>
...
else
...
end
in 節と when 節は1つの case 式の中に混ぜて書くことはできませ......<expression> => <pattern>
<expression> in <pattern>
case/in 式は 「網羅的」 です。もし case 式の値がどの節にもマッチせず else 節がない場合、例外 NoMatchingPatternError が発生します。
そのため、条件付きのマッチや展開に case 式が使わ... -
Pathname
# fnmatch(pattern , *args) -> bool (9323.0) -
File.fnmatch(pattern, self.to_s, *args) と同じです。
...le.fnmatch(pattern, self.to_s, *args) と同じです。
@param pattern パターンを文字列で指定します。ワイルドカードとして `*', `?', `[]' が使用できま
す。Dir.glob とは違って `{}' や `**/' は使用できません。
@param args File.fnmatch......を参照してください。
//emlist[例][ruby]{
require "pathname"
path = Pathname("testfile")
path.fnmatch("test*") # => true
path.fnmatch("TEST*") # => false
path.fnmatch("TEST*", File::FNM_CASEFOLD) # => true
//}
@see File.fnmatch... -
Pathname
# fnmatch?(pattern , *args) -> bool (9323.0) -
File.fnmatch?(pattern, self.to_s, *args) と同じです。
...le.fnmatch?(pattern, self.to_s, *args) と同じです。
@param pattern パターンを文字列で指定します。ワイルドカードとして `*', `?', `[]' が使用できま
す。Dir.glob とは違って `{}' や `**/' は使用できません。
@param args File.fnmatch......を参照してください。
@see File.fnmatch?... -
Abbrev
. # abbrev(words , pattern = nil) -> Hash (9207.0) -
文字列の配列から一意に決まる短縮形を計算し、 短縮形をキー、元の文字列を値とするハッシュを返します。
...ものから短縮形を計算します。
@param words 元となる文字列の配列。
@param pattern Regexp か String を指定します。
@return 短縮形をキー、元の文字列を値とするハッシュを返します。
require 'abbrev'
# words に同じ文字列が含ま......る場合は
# 以下のようにその文字列しか返しません。
pp Abbrev.abbrev(%w[ruby ruby]).sort
# => [["ruby", "ruby"]]
# 空白が含まれていても適切に処理します。
pp Abbrev.abbrev(['ru by']).sort
# => [["r", "ru by"],
# ["ru", "ru by"],......# ["ru ", "ru by"],
# ["ru b", "ru by"],
# ["ru by", "ru by"]]
# sort していない例
p %w[ruby rubyist].abbrev
#=> {"ruby" => "ruby",
# "rubyi" => "rubyist",
# "rubyis" => "rubyist",
# "rubyist" => "rubyist"}...