Mencari dan Mengganti
gsub, sub, match.
Mencari dan Mengganti adalah pelajaran Ruby Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Ruby Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Ruby Academy mencakup 4 pelajaran total.
Mencari Subteks
Metode index mengembalikan posisi kecocokan pertama, atau nil jika tidak ditemukan. include? mengembalikan true atau false.
text = "hello world"
puts text.index("world")
puts text.include?("world")Mengganti Kecocokan Pertama dengan sub
sub hanya mengganti kemunculan pertama suatu pola dengan nilai baru.
text = "cat cat cat"
puts text.sub("cat", "dog")Mengganti Semua Kecocokan dengan gsub
gsub berarti substitusi global. Metode ini mengganti setiap kemunculan.
text = "cat cat cat"
puts text.gsub("cat", "dog")Menggunakan Ekspresi Reguler
Pola di antara garis miring seperti /.../ adalah ekspresi reguler. /\d/ mencocokkan satu digit. gsub dan sub menerima pola ekspresi reguler.
text = "a1b2c3"
puts text.gsub(/\d/, "*")Mencocokkan dengan match?
match? mengembalikan true jika ekspresi reguler cocok di mana pun dalam teks. Metode ini cepat dan rapi untuk pemeriksaan.
email = "ada@ruby.org"
puts email.match?(/@/)
puts "no at sign".match?(/@/)Menangkap dengan match
match mengembalikan objek MatchData. Indeks [0] adalah seluruh kecocokan; tanda kurung membuat grup tangkapan yang diakses melalui [1], [2], dan seterusnya.
data = "2024-05-30"
m = data.match(/(\d+)-(\d+)-(\d+)/)
puts m[1]
puts m[2]scan untuk Semua Kecocokan
scan mengembalikan larik berisi setiap kecocokan dalam teks. Sangat cocok untuk mengambil semua angka atau kata.
text = "phone 555 and 777"
puts text.scan(/\d+/).inspectJangkar
Jangkar mengikat kecocokan pada suatu posisi. ^ berarti awal baris, sedangkan $ berarti akhir baris. \A dan \z mengikatnya pada batas seluruh teks.
puts "hello".match?(/^hel/)
puts "hello".match?(/llo$/)
puts "hello".match?(/^world/)Kelas Karakter
Tanda kurung siku mendefinisikan sekumpulan karakter yang diizinkan. [aeiou] mencocokkan vokal apa pun. [a-z] mencocokkan huruf kecil apa pun.
text = "Ruby"
puts text.gsub(/[aeiou]/i, "_")Blok dalam gsub
Berikan blok kepada gsub untuk mengubah setiap kecocokan secara dinamis. Teks yang cocok menjadi argumen blok.
text = "one two"
result = text.gsub(/\w+/) { |w| w.upcase }
puts resultPencarian Tanpa Membedakan Huruf Besar dan Kecil
Penanda i setelah ekspresi reguler membuatnya mengabaikan perbedaan huruf besar dan kecil.
text = "Hello HELLO hello"
puts text.gsub(/hello/i, "hi")Pemeriksaan Singkat
Periksa kemampuan Anda mencari dan mengganti.
Ringkasan
Sekarang Anda dapat mencari dan mengganti teks:
index,include?,match?untuk mencarisub(pertama) dangsub(semua) untuk mengganti- pola ekspresi reguler, jangkar, dan kelas karakter
scanuntuk mengambil semua kecocokan serta blok untuk penggantian dinamis
Berikutnya: memecah dan menggabungkan teks.
puts "a,b,c".gsub(",", " | ")Pertanyaan yang Sering Diajukan
Apakah pelajaran “Mencari dan Mengganti” gratis?
Ya — teks lengkap “Mencari dan Mengganti” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Ruby Academy, upgrade ke CoddyKit PRO. Kursus Ruby Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Mencari dan Mengganti”?
gsub, sub, match. Kamu berlatih Ruby Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Ruby Academy?
Tidak diperlukan pengalaman sebelumnya. Ruby Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Mencari dan Mengganti” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Ruby Academy ini?
Ya. Setiap pelajaran Ruby Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Dasar-Dasar String dan Method
- Interpolasi dan Pemformatan
- Mencari dan Mengganti
- Memisahkan dan Menggabungkan