String Metotlarına Genel Bakış
Coddy'nin Ruby Journey'sinin Mantık ve Akış bölümünün bir parçası — ders 1 / 56.
Ruby, yaygın dönüşümler için dizelere geniş bir yerleşik metot koleksiyonu sunar. Ek kütüphanelere ihtiyacınız yoktur; bunlar oluşturduğunuz her dizenin bir parçasıdır.
En kullanışlı olanlardan bazıları büyük/küçük harf değiştirir veya boşlukları kaldırır:
name = " Alice "
puts name.strip # "Alice"
puts name.upcase # " ALICE "
puts name.downcase # " alice "
puts name.reverse # " ecilA "Diğerleri size dize hakkında bir şeyler söyler:
word = "hello"
puts word.length # 5
puts word.include?("ell") # true
puts word.start_with?("he") # trueBunların çoğu yeni bir string döndürür. Ünlem versiyonunu (örneğin upcase!) kullanmadığınız sürece orijinali değişmeden kalır.
Görev
BaşlangıçTek bir girdi satırı okuyun. Ayrı satırlarda şunları yazdırın:
- Başındaki ve sonundaki boşlukları kaldırılmış girdi
- Bu kırpılmış değerin büyük harf hali
- Kırpılmış değerin uzunluğu
trueveyafalse: kırpılmış değer"ruby"içeriyor mu (büyük/küçük harf duyarsız)?
Hello Ruby world girdisi için çıktı şöyledir:
Hello Ruby world
HELLO RUBY WORLD
16
trueKopya kağıdı
Yaygın Ruby dize (string) metotları:
name = " Alice "
name.strip # "Alice" - baştaki/sondaki boşlukları kaldırır
name.upcase # " ALICE "
name.downcase # " alice "
name.reverse # " ecilA "
word = "hello"
word.length # 5
word.include?("ell") # true
word.start_with?("he") # trueÇoğu metot yeni bir dize döndürür; yerinde değişiklik yapmak için ünlem işaretli sürümü (örneğin upcase!) kullanın.
Kendin dene
input = gets.chomp
# YAPILACAK: gerekli dört satırı yazdırın
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık ve Akış bölümündeki tüm dersler
1Derinlemesine Stringler
String Metotlarına Genel BakışString InterpolationStringler Üzerinde GezinmeSplit ve JoinÖzet - String Weaver4Bloklar, Procs ve Lambdalar
Blok Nedir?do..end ve Süslü Parantezleryield Anahtar KelimesiBlok ParametreleriProcs ve LambdalarÖzet - Özel İteratör7Hashes Bölüm 2
Varsayılan Değerlerle Hash.newHash Yapıları Üzerinde Yinelemeİç İçe Hash YapılarıBirleştirme ve DönüştürmeÖzet - Frekans Sayacı10Proje - Öğrenci Kayıtları
Projeye Genel BakışÖğrenci Ekle5Enumerable Gücü
Select ve RejectMap ZincirlemeReduce / Injectcount, all?, any?, none?group_by ve partitionsort_by, min_by, max_byÖzet - Data Pipeline8İleri Seviye Karar Yapıları
Sınıflar ve Regex ile CaseÇok Değerli whenTernary OperatörüSatır İçi if / unlessÖzet - Not Sınıflandırıcı