Module: Browscapper::Reader

Included in:
CSVReader, INIReader, MarshalReader
Defined in:
lib/browscapper/reader.rb

Instance Method Summary collapse

Instance Method Details

#pattern_to_regexp(pattern) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/browscapper/reader.rb', line 5

def pattern_to_regexp(pattern)
  pattern = pattern.dup

  if pattern.respond_to?(:force_encoding)
    pattern.force_encoding('BINARY')
  end

  pattern.downcase!
  pattern.gsub!(/([\^\$\(\)\[\]\.\-\+])/, "\\\\\\1")
  pattern.gsub!('?', '.')
  pattern.gsub!(/\*+/, '.*?')

  Regexp.new("^#{pattern}$")
end