Class: String

Inherits:
Object
  • Object
show all
Defined in:
lib/string_extensions/string_extensions.rb

Instance Method Summary collapse

Instance Method Details

#parameterize(separator = '-', preserve_case: false, locale: nil) ⇒ Object Also known as: to_slug, slugify, slugerize



17
18
19
20
21
# File 'lib/string_extensions/string_extensions.rb', line 17

def parameterize(separator = '-', preserve_case: false, locale: nil)
  separator = '-' unless separator.is_a?(String)
  slug = remove_formatting.replace_whitespace(separator).collapse(separator)
  preserve_case ? slug : slug.downcase
end

#symbolizeObject



4
5
6
# File 'lib/string_extensions/string_extensions.rb', line 4

def symbolize
  gsub(/[^A-Za-z0-9]+/, '_').gsub(/(^_+|_+$)/, '').underscore.to_sym
end

#titlecaseObject



8
9
10
# File 'lib/string_extensions/string_extensions.rb', line 8

def titlecase
  gsub(/((?:^|\s)[a-z])/) { $1.to_s.upcase }
end

#to_name(last_part = '') ⇒ Object



12
13
14
# File 'lib/string_extensions/string_extensions.rb', line 12

def to_name(last_part = '')
  underscore.gsub('/', ' ').humanize.titlecase.gsub(/\s*#{last_part}$/, '')
end