如何在`Dir.glob`模式中匹配零次或一次

时间:2014-09-26 00:52:05

标签: ruby regex

我想通过Dir.glob打开“ab23”或“dca-5333”等文件。

在Regex中,我可以编写类似/^\w+-?\d+$/的模式,但Dir.glob中的模式不同。 特别是我找不到函数?的等效表达式:match zero or one times

在这种情况下如何编写模式?

1 个答案:

答案 0 :(得分:0)

你可以在这里找到Dir.glob的许多模式:http://ruby.about.com/od/beginningruby/a/dir2.htm。我不认为你可以用Dir.glob翻译这个精确的正则表达式(为了匹配0次或更多次,你使用*就像在正则表达式中一样,但你的查询非常具体)。也许这样的事情会更好:

Dir.glob('*').select { |element| element[/^\w+-?\d+$/] }