Ruby-merkkijonomenetelmät selitetty - pituus, tyhjä ja muut sisäänrakennetut menetelmät

Ruby on monia sisäänrakennettu menetelmiä työskennellä jouset. Ruby-merkkijonot ovat oletusarvoisesti muutettavissa ja niitä voidaan muuttaa paikalleen tai uusi merkkijono voidaan palauttaa menetelmästä.

Pituus

.lengthOmaisuus palauttaa merkkien määrä merkkijonon lukien white-space.

"Hello".length #=> 5 "Hello World!".length #=> 12

Tyhjä

.empty?Menetelmä palauttaa true, jos merkkijonon pituus on nolla.

"Hello".empty? #=> false "!".empty? #=> false " ".empty? #=> false "".empty? #=> true

Kreivi

.countMenetelmä laskee kuinka monta kertaa tietty merkki (s) löytyy merkkijono.

Tämä menetelmä erottaa kirjainkoon.

"HELLO".count('L') #=> 2 "HELLO WORLD!".count('LO') #=> 1

Lisää

.insertMenetelmä lisää merkkijono toiseen string ennen tiettyä indeksiä.

"Hello".insert(3, "hi5") #=> Helhi5lo # "hi5" is inserted into the string right before the second 'l' which is at index 3

Kotelo

.upcaseMenetelmä muuntaa kaikki kirjaimet merkkijonon isoiksi.

"Hello".upcase #=> HELLO

Alas

.downcaseMenetelmä muuntaa kaikki kirjaimet merkkijonon pieniksi kirjaimiksi.

"Hello".downcase #=> hello

Vaihda

.swapcaseMenetelmä muuttaa isot viimeksi mainittujen merkkijonon pieniksi kirjaimiksi ja pienet kirjaimet isoiksi.

"hELLO wORLD".swapcase #=> Hello World

Isojen kirjainten käyttö

.capitalizeMenetelmä tehdä ensimmäinen kirjain jono isoja ja loput merkkijonon pieniä.

"HELLO".capitalize #=> Hello "HELLO, HOW ARE YOU?".capitalize #=> Hello, how are you?

Huomaa, että ensimmäinen kirjain kirjoitetaan isolla, jos se on merkkijonon alussa.ruby "-HELLO".capitalize #=> -hello "1HELLO".capitalize #=> 1hello

Käänteinen

.reverseMenetelmä kääntää järjestyksen merkkijonon merkkien.

"Hello World!".reverse #=> "!dlroW olleH"

Jakaa

.splitOttaa jouset ja jakaa sen array, palaa sitten jono.

"Hello, how are you?".split #=> ["Hello,", "how", "are", "you?"]

Oletusmenetelmä jakaa merkkijonon välilyönnin perusteella, ellei toista erotinta anneta (katso toinen esimerkki).

"H-e-l-l-o".split('-') #=> ["H", "e", "l", "l", "o"]

Leikkaa

.chopMenetelmä poistaa viimeisen merkin merkkijonon.

Uusi merkkijono palautetaan, ellet käytä .chop!menetelmää, joka muuttaa alkuperäisen merkkijonon.

"Name".chop #=> Nam
name = "Batman" name.chop name == "Batma" #=> false
name = "Batman" name.chop! name == "Batma" #=> true

Nauha

.stripMenetelmä poistaa johtava ja perään välilyönnillä merkkijonoja, kuten välilehdet, rivinvaihdot, ja vaunu palaa ( \t, \n, \r).

" Hello ".strip #=> Hello

Chomp

.chompMenetelmä poistaa viimeisen merkin merkkijono, vain jos se on rivinvaihto tai newline ( \r, \n).

Tätä menetelmää käytetään yleisesti getskomennon kanssa poistamaan palautukset käyttäjän syötteistä.

"hello\r".chomp #=> hello "hello\t".chomp #=> hello\t # because tabs and other whitespace remain intact when using `chomp`

Kokonaislukuun

.to_iMenetelmä muuntaa merkkijonon kokonaisluku.

"15".to_i #=> 15 # integer

Gsub

gsub korvaa merkkijonon toisen parametrin kaikki viitteet ensimmäiseen parametriin.

"ruby is cool".gsub("cool", "very cool") #=> "ruby is very cool"

gsubhyväksyy myös mallit (kuten regexp ) ensimmäisenä parametrina, sallien esimerkiksi:

"ruby is cool".gsub(/[aeiou]/, "*") #=> "r*by *s c**l"

Ketjutus

Ruby toteuttaa joitain menetelmiä liittämään kaksi merkkijonoa yhteen.

+Menetelmä:

"15" + "15" #=> "1515" # string

<<Menetelmä:

"15" < "1515" # string

concatMenetelmä:

"15".concat "15" #=> "1515" # string

Indeksi

indexMenetelmä palauttaa indeksi asema ensimmäisen osajono tai säännöllisen lausekkeen kuvio ottelu merkkijono. Jos vastaavuutta ei löydy, nilpalautetaan.

Toinen valinnainen parametri ilmaisee, mikä merkkijonon hakemiston sijainti alkaa etsiä vastaavuutta.

"information".index('o') #=> 3 "information".index('mat') #=> 5 "information".index(/[abc]/) #=> 6 "information".index('o', 5) #=> 9 "information".index('z') #=> nil

Asia selvä

Poistaa merkkijonon sisällön.

a = "abcde" a.clear #=> ""