Method: String#dir_to_rx
- Defined in:
- lib/na/string.rb
#dir_to_rx(distance: 1, require_last: true) ⇒ Object
Note:
Splits at / or :, adds variable distance between characters, joins segments with slashes and requires that last segment match last segment of target path
Convert a directory path to a regular expression
199 200 201 |
# File 'lib/na/string.rb', line 199 def dir_to_rx(distance: 1, require_last: true) "#{split(%r{[/:]}).map { |comp| comp.split('').join(".{0,#{distance}}").gsub(/\*/, '[^ ]*?') }.join('.*?/.*?')}#{require_last ? '[^/]*?$' : ''}" end |