Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

String

Le estensioni per la manipolazione di stringhe, tra i punti di forza di Ruby
Le estensioni per la manipolazione di stringhe, tra i punti di forza di Ruby
Link copiato negli appunti

È noto che la manipolazione delle stringhe è uno dei punti di forza dei linguaggi come Ruby e PERL. Non è quindi un caso che ActiveSupport sia particolarmente ricco di estensioni per la classe String.

Partiamo dal modulo String::Access che fornisce numerosi
metodi per accedere a singole porzioni di una stringa.

require '../helper'

"hello".at(0)# => "h"
"hello".at(4)# => "o"

"hello".from(0)  # => "hello"
"hello".from(2)  # => "llo"

"hello".to(0)# => "h"
"hello".to(2)# => "hel"

"hello".first# => "h"
"hello".first(2) # => "he"

"hello".last # => "o"
"hello".last(2)  # => "lo"

String::Filters introduce il metodo squish ed il suo gemello squish!, fenomenali per filtrare una stringa su una sola riga rimuovendo gli spazi in eccesso: ideale per normalizzare gli input in ingresso ad esempio da una form o dallo scraping di una pagina web.

String::Multibyte, String::Iterators e String::StartsEndsWith attivano in Ruby 1.8.6 e precedenti il supporto alle stringhe multibyte, gli iteratori su stringa ed altre caratteristiche presenti solo in Ruby 1.8.7 o Ruby 1.9.0.

String::Inflections offre invece una utilissima raccolta di metodi per trasformare nomi in base a diverse esigenze. Ecco alcuni esempi estremamente significativi.

require '../helper'

"post".pluralize  # => "posts"
"octopus".pluralize   # => "octopi"

"posts".singularize   # => "post"
"octopi".singularize  # => "octopus"

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

"man from the boondocks".titleize # => "Man From The Boondocks"
"x-men: the last stand".titleize  # => "X Men: The Last Stand"

"employee_salary" # => "Employee salary" 
"author_id"   # => "Author"

Ti consigliamo anche