U:RDoc::AnyMethod[iI" glob:ETI"Dir::glob;TT:publico:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [I"OExpands +pattern+, which is an Array of patterns or a pattern String, and ;TI"Ireturns the results as +matches+ or as arguments given to the block.;To:RDoc::Markup::BlankLine o;
; [ I"ONote that this pattern is not a regexp, it's closer to a shell glob. See ;TI"MFile::fnmatch for the meaning of the +flags+ parameter. Note that case ;TI"Osensitivity depends on your system (so File::FNM_CASEFOLD is ignored), as ;TI"6does the order in which the results are returned.;T@o:RDoc::Markup::List:
@type: NOTE:@items[o:RDoc::Markup::ListItem:@label[I"*
;T; [
o;
; [I"FMatches any file. Can be restricted by other values in the glob. ;TI"2Equivalent to / .* /x
in regexp.;T@o;;
;;[ o;;[I"*
;T; [o;
; [I"Matches all files;To;;[I"c*
;T; [o;
; [I"4Matches all files beginning with c
;To;;[I"*c
;T; [o;
; [I"1Matches all files ending with c
;To;;[I"\*c\*
;T; [o;
; [I"6Match all files that have c
in them ;TI")(including at the beginning or end).;T@o;
; [I"LNote, this will not match Unix-like hidden files (dotfiles). In order ;TI"=to include those in the match results, you must use the ;TI"EFile::FNM_DOTMATCH flag or something like "{*,.*}"
.;T@o;;[I"**
;T; [o;
; [I"%Matches directories recursively.;T@o;;[I"?
;T; [o;
; [I"LMatches any one character. Equivalent to /.{1}/
in regexp.;T@o;;[I"[set]
;T; [o;
; [I"NMatches any one character in +set+. Behaves exactly like character sets ;TI"=in Regexp, including set negation ([^a-z]
).;T@o;;[I"{p,q}
;T; [ o;
; [I"FMatches either literal p
or literal q
. ;TI"1Equivalent to pattern alternation in regexp.;T@o;
; [I"LMatching literals may be more than one character in length. More than ;TI"#two literals may be specified.;T@o;;[I" \\
;T; [ o;
; [I"$Escapes the next metacharacter.;T@o;
; [I"KNote that this means you cannot use backslash on windows as part of a ;TI"Aglob, i.e. Dir["c:\\foo*"]
will not work, use ;TI")Dir["c:/foo*"]
instead.;T@o;
; [I"Examples:;T@o:RDoc::Markup::Verbatim; [I":Dir["config.?"] #=> ["config.h"]
;TI":Dir.glob("config.?") #=> ["config.h"]
;TI"9Dir.glob("*.[a-z][a-z]") #=> ["main.rb"]
;TI":Dir.glob("*.[^r]*") #=> ["config.h"]
;TI"EDir.glob("*.{rb,h}") #=> ["main.rb", "config.h"]
;TI"EDir.glob("*") #=> ["config.h", "main.rb"]
;TI"PDir.glob("*", File::FNM_DOTMATCH) #=> [".", "..", "config.h", "main.rb"]
;TI"
;TI"'rbfiles = File.join("**", "*.rb")
;TI"9Dir.glob(rbfiles) #=> ["main.rb",
;TI"= # "lib/song.rb",
;TI"E # "lib/song/karaoke.rb"]
;TI"&libdirs = File.join("**", "lib")
;TI"5Dir.glob(libdirs) #=> ["lib"]
;TI"
;TI"7librbfiles = File.join("**", "lib", "**", "*.rb")
;TI"=Dir.glob(librbfiles) #=> ["lib/song.rb",
;TI"E # "lib/song/karaoke.rb"]
;TI"
;TI"1librbfiles = File.join("**", "lib", "*.rb")
;TI"