MulaiMulai sekarang secara gratis

Berlatih regular expression: re.split() dan re.findall()

Sekarang Anda berkesempatan menulis beberapa regular expression untuk mencocokkan digit, string, dan karakter non-alfanumerik. Lihat terlebih dahulu my_string dengan mencetaknya di IPython Shell, untuk menentukan cara terbaik mencocokkan tiap langkahnya.

Catatan: Penting untuk menambahkan awalan r pada pola regex Anda agar polanya ditafsirkan sesuai yang Anda inginkan. Jika tidak, Anda dapat mengalami masalah terkait urutan escape dalam string. Misalnya, "\n" di Python digunakan untuk menandai baris baru, tetapi jika Anda menggunakan awalan r, itu akan ditafsirkan sebagai raw string "\n" — yaitu karakter "\" diikuti karakter "n" — dan bukan sebagai baris baru.

Modul regular expression re sudah diimpor untuk Anda.

Ingat dari video bahwa sintaksis untuk pustaka regex adalah selalu mengoper pola terlebih dahulu, lalu string kedua.

Latihan ini adalah bagian dari kursus

Pengantar Natural Language Processing di Python

Lihat Kursus

Petunjuk latihan

  • Pisahkan my_string pada setiap akhir kalimat. Untuk melakukan ini:
    • Tulis sebuah pola bernama sentence_endings untuk mencocokkan akhir kalimat (.?!).
    • Gunakan re.split() untuk memisahkan my_string berdasarkan pola tersebut dan cetak hasilnya.
  • Temukan dan cetak semua kata yang diawali huruf kapital di my_string dengan menulis pola bernama capitalized_words dan menggunakan re.findall().
    • Ingat pola [a-z] yang ditunjukkan di video untuk mencocokkan kelompok huruf kecil? Ubah pola tersebut secara tepat untuk mencocokkan kelompok huruf besar.
  • Tulis sebuah pola bernama spaces untuk mencocokkan satu atau lebih spasi ("\s+"), lalu gunakan re.split() untuk memisahkan my_string berdasarkan pola ini, dengan tetap mempertahankan semua tanda baca. Cetak hasilnya.
  • Temukan semua digit di my_string dengan menulis pola bernama digits ("\d+") dan menggunakan re.findall(). Cetak hasilnya.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Write a pattern to match sentence endings: sentence_endings
sentence_endings = r"[___]"

# Split my_string on sentence endings and print the result
print(re.____(____, ____))

# Find all capitalized words in my_string and print the result
capitalized_words = r"[___]\w+"
print(re.____(____, ____))

# Split my_string on spaces and print the result
spaces = r"___"
print(re.____(____, ____))

# Find all digits in my_string and print the result
digits = r"___"
print(re.____(____, ____))
Edit dan Jalankan Kode