Menu
CoddyTech

Memisahkan dan menggabungkan

Termasuk bagian Logika dan Alur dalam perjalanan Swift di Coddy. Pelajaran 4 dari 56.

Dua alat sehari-hari untuk menangani teks yang dipisahkan pembatas. Keduanya berasal dari Foundation, yang sudah diimpor.

components(separatedBy:) memecah string menjadi array berisi String berdasarkan pemisah apa pun yang kamu berikan:

let csv = "red,green,blue"
let parts = csv.components(separatedBy: ",")
print(parts)                       // ["red", "green", "blue"]

Kebalikannya adalah joined(separator:) pada [String] apa pun:

let words = ["swift", "is", "fun"]
let line = words.joined(separator: " ")
print(line)                        // "swift is fun"

Kamu akan sering menggabungkannya: pisahkan, ubah dengan map, lalu gabungkan kembali. Hasil map pada [String] tetap berupa [String], jadi joined bisa langsung digunakan.

challenge icon

Tantangan

Mudah

Baca satu baris input: list kata yang dipisahkan dengan koma.

Cetak tiga baris:

  1. Jumlah kata setelah dipisahkan berdasarkan ,
  2. Kata-kata yang digabungkan kembali dengan > (spasi, tanda lebih besar dari, spasi), dalam huruf besar
  3. Kata terpanjang dari list (setelah dipisahkan). Jika dua kata sama panjang, gunakan kata yang muncul lebih dulu.

Untuk input red,green,blue, output-nya adalah:

3
RED > GREEN > BLUE
green

Coba sendiri

let line = readLine()!
let words = line.components(separatedBy: ",")

// TODO: cetak jumlah kata, kata-kata dalam huruf kapital yang digabung dengan " > ", dan kata terpanjang pertama
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Logika dan Alur

Latihan sendiri: Playground Swift