Giriş
Bu yazımda Ruby ile basit string ve dizgi işlemlerinin nasıl yapılabileceğini göreceğiz. Birçok programlama diline göre oldukça basit.
Ayraçlarla Ayrılmış Stringleri Parçalamak
Örneğin şu veriyi içeren bir stringimiz olsun:
merhaba,dünya,ben,ruby,programlama,yapıyorum
Bu stringi “,” ayracıyla ayırıp aşağıdaki gibi kelime kelime ekrana basalım:
merhaba
dünya
ben
ruby
programlama
yapıyorum
# Kütüphaneleri yükle require 'rubygems' # Parçalanacak string parcalanacak = "merhaba,dünya,ben,ruby,programlama,yapıyorum" # ,'den ayır ve diziye ay kelime_dizisi = parcalanacak.split(",") # Dizideki her bir giriş için girişi ekrana yazdır kelime_dizisi.each do |kelime| puts kelime end
Hmm, bir de ekrana basarken her kelimenin baş harfini büyük yapalım:
# Kütüphaneleri yükle require 'rubygems' # Parçalanacak string parcalanacak = "merhaba,dünya,ben,ruby,programlama,yapıyorum" # ,'den ayır ve diziye ay kelime_dizisi = parcalanacak.split(",") # Dizideki her bir giriş için girişi ekrana yazdır kelime_dizisi.each do |kelime| puts kelime.capitalize end
Hmm, bir de bir çılgınlık yapıp bütün karakterleri büyük harf yazdıralım:
# Kütüphaneleri yükle require 'rubygems' # Parçalanacak string parcalanacak = "merhaba,dünya,ben,ruby,programlama,yapıyorum" # ,'den ayır ve diziye ay kelime_dizisi = parcalanacak.split(",") # Dizideki her bir giriş için girişi ekrana yazdır kelime_dizisi.each do |kelime| puts kelime.upcase end
String’e String Eklemek
Bir stringe bir string eklemek için aşağıdaki kodu kullanabiliriz:
# Kütüphaneleri yükle require 'rubygems' # Yazi tanımları yazi1 = "Merhaba dünya!" yazi2 = "Ben Ruby programlama yapıyorum!!!" # Birleştirilmiş yazi yazi3 = yazi1 + " " + yazi2 # Ekrana bastıralım puts yazi3
String’den Karakter Silmek
Bir stringin son karakterini silmek için:
# Kütüphaneleri yükle require 'rubygems' # Yazi tanımları yazi1 = "Merhaba dünya!" yazi2 = "Ben Ruby programlama yapıyorum!!!" # Birleştirilmiş yazi yazi3 = yazi1 + " " + yazi2 # Ekrana bastıralım puts yazi3 # Son karakteri silelim puts yazi3.chop!
Yazının sonundaki bir new line (\n) veya carriage return (\r) gizli karakterlerini silmek için:
# Kütüphaneleri yükle require 'rubygems' # Yazi tanımları yazi1 = "Merhaba dünya!\n" yazi2 = "Ben Ruby programlama yapıyorum!!!\r\n" # İlk hallerini ekrana basalım puts yazi1 + yazi2 + "Satırlara dikkat!" # Newline ve CarriageReturn silelim yazi1 = yazi1.chomp yazi2 = yazi2.chomp # Yeni hallerini ekrana basalım puts yazi1 + yazi2 + "Satırlara dikkat!"
Sondan 5 karakteri de silebiliriz:
# Kütüphaneleri yükle require 'rubygems' # Yazi tanımları yazi1 = "Merhaba dünya!" yazi2 = "Ben Ruby programlama yapıyorum!!!" # Sondan 2 karakteri silelim 5.times do yazi2.chop! end # İlk hallerini ekrana basalım puts yazi1 + yazi2
Yazı dizisi içerisindeki “Ruby” kelimesini silelim:
# Kütüphaneleri yükle require 'rubygems' # Yazi tanımları yazi1 = "Merhaba dünya!" yazi2 = "Ben Ruby programlama yapıyorum!!!" # Ruby kelimesini silelim yazi2 = yazi2.sub("Ruby ", "") # İlk hallerini ekrana basalım puts yazi1 + yazi2
Bütün ünlem işaretlerini silelim:
# Kütüphaneleri yükle require 'rubygems' # Yazi tanımları yazi1 = "Merhaba dünya!" yazi2 = "Ben Ruby programlama yapıyorum!!!" # Ruby kelimesini silelim yazi2 = yazi2.gsub("!", "") # İlk hallerini ekrana basalım puts yazi1 + yazi2
Array’den Bir Hane Seçmek
En baştaki örnekte:
merhaba,dünya,ben,ruby,programlama,yapıyorum
yazısını virgüllerden parçalayarak bir dizi elde etmiştik. Şimdi bu dizinin sadece 3. elemanını ekrana yazdıralım:
# Kütüphaneleri yükle require 'rubygems' # Parçalanacak string parcalanacak = "merhaba,dünya,ben,ruby,programlama,yapıyorum" # ,'den ayır ve diziye ay kelime_dizisi = parcalanacak.split(",") # 3. girişi ekrana yazdır puts kelime_dizisi[2]
3. ve 6. girişi değiştirip tamamını ekrana bastıralım:
# Kütüphaneleri yükle require 'rubygems' # Parçalanacak string parcalanacak = "merhaba,dünya,ben,ruby,programlama,yapıyorum" # ,'den ayır ve diziye ay kelime_dizisi = parcalanacak.split(",") # 3. ve 6. girişleri değiştir kelime_dizisi[2]="biz" kelime_dizisi[5]="yapıyoruz" # Dizideki her bir giriş için girişi ekrana yazdır kelime_dizisi.each do |kelime| puts kelime end
Array’den Bir Hane Silmek
Bir önceki örnekte “Ruby” yazısının bulunduğu girişi silip ekrana basalım:
# Kütüphaneleri yükle require 'rubygems' # Parçalanacak string parcalanacak = "merhaba,dünya,ben,ruby,programlama,yapıyorum" # ,'den ayır ve diziye ay kelime_dizisi = parcalanacak.split(",") # "Ruby" nin bulunduğu girişi sil kelime_dizisi.delete_at(3) # Dizideki her bir giriş için girişi ekrana yazdır kelime_dizisi.each do |kelime| puts kelime end
4. konumda olduğunu elle belirterek sildik, şimdi de dinamik olarak bularak silelim:
# Kütüphaneleri yükle require 'rubygems' # Parçalanacak string parcalanacak = "merhaba,dünya,ben,ruby,programlama,yapıyorum" # ,'den ayır ve diziye ay kelime_dizisi = parcalanacak.split(",") # "ruby" nin bulunduğu girişi sil kelime_dizisi.delete("ruby") # Dizideki her bir giriş için girişi ekrana yazdır kelime_dizisi.each do |kelime| puts kelime end
Başka programlama dillerine hakimseniz bu kadar basit olmasını beklemiyordunuz herhalde?
Sonuç
Umarım işinize yarar, iyi kodlamalar!
Bir cevap yazın
Yorum yapabilmek için giriş yapmalısınız.