Rubiinikeelte meetodid - pikkus, tühi ja muud sisseehitatud meetodid

Rubiinil on stringidega töötamiseks palju sisseehitatud meetodeid. Rubiinis olevad stringid on vaikimisi muudetavad ja neid saab paigas muuta või meetodilt saab uue stringi tagastada.

Pikkus

.lengthVara tagastab arvu tähemärki string sh valge-ruumi.

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

Tühi

.empty?Meetod tagastab truekui string on pikkus null.

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

Krahv

.countMeetod loeb mitu korda eripära (id) on leitud stringi.

See meetod on tõstutundlik.

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

Sisesta

.insertMeetod lisab string teise string enne antud indeks.

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

Suur kott

.upcaseMeetod muudab kõik tähed string suurtäheks.

"Hello".upcase #=> HELLO

Alumine

.downcaseMeetod muudab kõik tähed string väiketähtedeks.

"Hello".downcase #=> hello

Vahetuskott

.swapcaseMeetod muudab suur- viimaste string väiketähtedeks ja väiketähti suurtäheks.

"hELLO wORLD".swapcase #=> Hello World

Suurtähtede kasutamine

.capitalizeMeetod teha esimene täht string suur- ja ülejäänud string väiketähed.

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

Pange tähele, et esimene täht on suurtähtedega kirjutatud ainult siis, kui see on stringi alguses.ruby "-HELLO".capitalize #=> -hello "1HELLO".capitalize #=> 1hello

Tagurpidi

.reverseMeetod pöörab järjekorras tähemärki string.

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

Split

.splitVõtab stringid ja jagab seda massiivi, siis tagastab massiivi.

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

Vaikemeetod jagab stringi tühimärgi alusel, välja arvatud juhul, kui pakutakse muud eraldajat (vt teist näidet).

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

Haki

.chopMeetod eemaldab viimase tähe string.

Uus string tagastatakse, kui te ei kasuta .chop!algse stringi muteerivat meetodit.

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

Riba

.stripMeetod eemaldab esimesed ja tagumised tühik strings, sealhulgas vahelehed, reavahetused ja reavahetusmärgid ( \t, \n, \r).

" Hello ".strip #=> Hello

Chomp

.chompMeetod kõrvaldab viimase märgi stringi, ainult siis, kui see on reavahetuse või reavahetus ( \r, \n).

Seda meetodit kasutatakse tavaliselt getskäsuga tagastuste eemaldamiseks kasutaja sisendist.

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

Täisarvuni

.to_iMeetod teisendab stringi täisarvuks.

"15".to_i #=> 15 # integer

Gsub

gsub asendab stringi teise parameetri kõik viited esimesest parameetrist.

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

gsubaktsepteerib esimese parameetrina ka mustreid (nagu regexp ), lubades näiteks:

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

Liitmine

Ruby rakendab mõnd meetodit kahe stringi ühendamiseks.

+Meetodit:

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

<<Meetodit:

"15" < "1515" # string

concatMeetodit:

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

Indeks

indexMeetod tagastab indeks positsiooni esimese esinemise alamstring või regulaaravaldise vaste string. Kui vastet ei leitud, niltagastatakse.

Teine valikuline parameeter näitab, millise indeksi positsiooni stringis tuleb vastet otsida.

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

Selge

Eemaldab stringi sisu.

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