Class: String

  • Object


This is an adapted version of active_support/core_ext/string/inflections.rb to prevent loading several dependencies including I18n gem.

Issue: github.com/rails/rails/issues/1526

Direct Known Subclasses


Defined Under Namespace

Classes: Colorizer

Instance Method Summary

Instance Method Details

#camelize(first_letter = :upper) ⇒ Object Also known as: camelcase

By default, camelize converts strings to UpperCamelCase. If the argument to camelize is set to :lower then camelize produces lowerCamelCase.

camelize will also convert '/' to '::' which is useful for converting paths to namespaces.

"active_record".camelize                # => "ActiveRecord"
"active_record".camelize(:lower)        # => "activeRecord"
"active_record/errors".camelize         # => "ActiveRecord::Errors"
"active_record/errors".camelize(:lower) # => "activeRecord::Errors"

#classify ⇒ Object

Create a class name from a plural table name like Rails does for table names to models. Note that this returns a string and not a class. (To convert to an actual class follow classify with constantize.)

"egg_and_hams".classify # => "EggAndHam"
"posts".classify        # => "Post"

Singular names are not handled correctly.

"business".classify # => "Busines"

#colorize(args) ⇒ Object


#constantize ⇒ Object

constantize tries to find a declared constant with the name specified in the string. It raises a NameError when the name is not in CamelCase or is not initialized.

"Module".constantize # => Module
"Class".constantize  # => Class

#dasherize ⇒ Object

Replaces underscores with dashes in the string.

#humanize(options = {}) ⇒ Object

Capitalizes the first word, turns underscores into spaces, and strips a trailing '_id' if present.

#pluralize ⇒ Object

Returns the plural form of the word in the string.

"post".pluralize             # => "posts"
"octopus".pluralize          # => "octopi"
"sheep".pluralize            # => "sheep"
"words".pluralize            # => "words"
"the blue mailman".pluralize # => "the blue mailmen"
"CamelOctopus".pluralize     # => "CamelOctopi"

#singularize ⇒ Object

Returns the singular form of the word in the string.

"posts".singularize            # => "post"
"octopi".singularize           # => "octopus"
"sheep".singularize            # => "sheep"
"words".singularize            # => "word"
"the blue mailmen".singularize # => "the blue mailman"
"CamelOctopi".singularize      # => "CamelOctopus"

#underscore ⇒ Object

The reverse of camelize. Makes an underscored, lowercase form from the expression in the string.

underscore will also change '::' to '/' to convert namespaces to paths.

"ActiveRecord".underscore         # => "active_record"
"ActiveRecord::Errors".underscore # => active_record/errors

© 2010–2016 Padrino
Licensed under the MIT License.