def parameterize(string, sep = '-')
      # replace accented chars with ther ascii equivalents
      parameterized_string = transliterate(string)
      # Turn unwanted chars into the seperator
      parameterized_string.gsub!(/[^a-z0-9\-_\+]+/i, sep)
      unless sep.blank?
        re_sep = Regexp.escape(sep)
        # No more than one of the separator in a row.
        parameterized_string.gsub!(/#{re_sep}{2,}/, sep)
        # Remove leading/trailing separator.
        parameterized_string.gsub!(/^#{re_sep}|#{re_sep}$/i, '')
      end
      parameterized_string.downcase
    end
def parameterize(string, sep = '-')
      # replace accented chars with ther ascii equivalents
      parameterized_string = transliterate(string)
      # Turn unwanted chars into the seperator
      parameterized_string.gsub!(/[^a-z0-9\-_\+]+/i, sep)
      unless sep.blank?
        re_sep = Regexp.escape(sep)
        # No more than one of the separator in a row.
        parameterized_string.gsub!(/#{re_sep}{2,}/, sep)
        # Remove leading/trailing separator.
        parameterized_string.gsub!(/^#{re_sep}|#{re_sep}$/i, '')
      end
      parameterized_string.downcase
    end
Replaces special characters in a string so that it may be used as part of a 'pretty' URL.

 ==== Examples

   class Person
     def to_param
       "#{id}-#{name.parameterize}"
     end
   end

   @person = Person.find(1)
   # => #<Person id: 1, name: "Donald E. Knuth">

   <%= link_to(@person.name, person_path(@person)) %>
   # => <a href="/person/1-donald-e-knuth">Donald E. Knuth</a>