Sha256: 384dfc02506e88a5a7d8352888508e966d96576093c928fb956d2c414b4b45f3

Contents?: true

Size: 1.41 KB

Versions: 8

Compression:

Stored size: 1.41 KB

Contents

# encoding: utf-8
#
# This file is part of the cowtech-extensions gem. Copyright (C) 2011 and above Shogun <shogun_panda@me.com>.
# Licensed under the MIT license, which can be found at http://www.opensource.org/licenses/mit-license.php.
#

module Cowtech
	module Extensions
    # Extensions for the String class.
		module String
			extend ::ActiveSupport::Concern

      # Removes accents from the string, normalizing to the normal letter.
      #
      # ```ruby
      # "èòàù".remove_accents
      # # => "eoau"
      # ```
      #
      # @return The string with all accents removed.
			def remove_accents
        silence_warnings {
				  self.mb_chars.normalize(:kd).gsub(/[^\x00-\x7F]/n, "").to_s
        }
			end

      # Returns the tagged version of a string.
      #
      # The string is downcased and spaces are substituted with `-`.
      #
      # ```ruby
      # "ABC cde".untitleize
      # # => "abc-cde"
      # ```
      #
      # @return [String] The untitleized version of the string.
			def untitleize
				self.downcase.gsub(" ", "-")
			end

      # Returns the string with all `&amp;` replaced with `&`.
      #
      # @return [String] The string with all `&amp;` replaced with `&`.
      def replace_ampersands
				self.gsub(/&amp;(\S+);/, "&\\1;")
			end

      # Returns the string itself for use in form helpers.
      #
      # @return [String] The string itself.
			def value
				self
			end
		end
	end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
cowtech-extensions-2.7.4 lib/cowtech-extensions/string.rb
cowtech-extensions-2.7.3 lib/cowtech-extensions/string.rb
cowtech-extensions-2.7.2 lib/cowtech-extensions/string.rb
cowtech-extensions-2.7.1 lib/cowtech-extensions/string.rb
cowtech-extensions-2.7.0 lib/cowtech-extensions/string.rb
cowtech-extensions-2.6.0 lib/cowtech-extensions/string.rb
cowtech-extensions-2.5.1 lib/cowtech-extensions/string.rb
cowtech-extensions-2.5.0 lib/cowtech-extensions/string.rb