Module: SublimeDSL::Tools::Helpers
- Defined in:
- lib/sublime_dsl/tools/helpers.rb
Overview
Helper methods to include in DSL blocks as needed.
Class Method Summary collapse
-
.optimized_re(words) ⇒ Object
Return an optimized regexp string matching a word in
words.
Class Method Details
.optimized_re(words) ⇒ Object
Return an optimized regexp string matching a word in words. Example:
include SublimeDSL::Tools::Helpers
list = %w(abs addr addrlong airy allcomb allperm anyalnum anyalpha anycntrl)
optimized_re(list)
=> 'a(bs|ddr(long)?|iry|ll(comb|perm)|ny(al(num|pha)|cntrl))'
16 17 18 19 20 21 |
# File 'lib/sublime_dsl/tools/helpers.rb', line 16 def optimized_re(words) root = Node.new('') root.add_children words root.reduce! root.to_re end |