Corak Regex dan Kelas Aksara
\d, \w, \s, ., ^, $, +, *, ?, {n,m}, kelas aksara [a-z], penafian [^...].
Corak Regex dan Kelas Aksara ialah pelajaran Pelajari AI dengan Python percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Pelajari AI dengan Python, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Pelajari AI dengan Python merangkumi sejumlah 4 pelajaran.
Mengapa Regex Penting untuk AI Teks
AI teks bermula dengan teks mentah yang tidak kemas. Ungkapan nalar (regex) ialah bahasa padat untuk mencari dan mengekstrak corak — nombor telefon, tarikh, tanda pagar dan URL — supaya anda boleh membersihkan serta menstrukturkan teks sebelum memberikannya kepada model.
Kursus ini mengajar corak, modul re, kumpulan dan saluran pemprosesan pembersihan teks sebenar.
Aksara Literal
Corak paling mudah ialah teks literal: corak ini sepadan tepat dengan aksara tersebut. Secara lalai, regex peka huruf besar kecil.
cat sepadan dengan "cat" dalam "the cat sat" tetapi bukan dengan "Cat".
import re
print(re.findall("cat", "the cat sat on a cat mat"))
# ["cat", "cat"]Metaksara Titik
Titik . sepadan dengan mana-mana satu aksara kecuali baris baharu. Titik ialah kad bebas.
c.t sepadan dengan "cat", "cot", "c9t" — apa-apa yang mempunyai c, satu aksara, kemudian t.
import re
print(re.findall("c.t", "cat cot cut c@t"))
# ["cat", "cot", "cut", "c@t"]Kelas Digit, Perkataan dan Ruang
Kelas aksara ringkas merangkumi kumpulan yang lazim:
\d— satu digit (0-9)\w— satu aksara perkataan (huruf, digit atau garis bawah)\s— ruang kosong (ruang, tab, baris baharu)
import re
print(re.findall("\d", "a1b2c3")) # ["1", "2", "3"]
print(re.findall("\w", "a_1!")) # ["a", "_", "1"]
print(re.findall("\s", "a b\tc")) # [" ", "\t"]Kelas Dinafikan
Versi huruf besar menafikan kelas tersebut:
\D— apa-apa yang BUKAN digit\W— BUKAN aksara perkataan\S— BUKAN ruang kosong
import re
print(re.findall("\D", "a1b2")) # ["a", "b"]
print(re.findall("\S", "a b c")) # ["a", "b", "c"]Set Aksara Tersuai dengan [ ]
Tanda kurung siku mentakrifkan set anda sendiri: sepadankan mana-mana satu aksara yang disenaraikan di dalamnya. Julat menggunakan tanda sempang.
[aeiou]— mana-mana vokal[A-Za-z]— mana-mana huruf[0-9]— mana-mana digit (sama seperti\d)
import re
print(re.findall("[A-Za-z]", "ab12CD")) # letters only
print(re.findall("[aeiou]", "hello")) # ["e", "o"]Set Dinafikan dengan [^ ]
Tanda sisipan di dalam kurungan menafikan set tersebut: sepadankan mana-mana aksara yang TIDAK disenaraikan.
[^abc] sepadan dengan apa-apa kecuali a, b atau c. (Tanda sisipan di luar kurungan ialah penambat, yang akan dibincangkan seterusnya.)
import re
print(re.findall("[^aeiou ]", "hello world"))
# consonants: ["h", "l", "l", "w", "r", "l", "d"]Penambat: ^ dan $
Penambat sepadan dengan kedudukan, bukan aksara:
^— permulaan rentetan (atau baris)$— penghujung rentetan (atau baris)
^Hello hanya sepadan jika teks bermula dengan "Hello".
import re
print(bool(re.search("^Hello", "Hello world"))) # True
print(bool(re.search("world$", "Hello world"))) # True
print(bool(re.search("^world", "Hello world"))) # FalsePengkuantiti: + * ?
Pengkuantiti menyatakan berapa kali item sebelumnya berulang:
+— satu atau lebih*— sifar atau lebih?— sifar atau satu (pilihan)
import re
print(re.findall("\d+", "abc 123 de 45")) # ["123", "45"]
print(re.findall("ab*", "a ab abb")) # ["a", "ab", "abb"]
print(re.findall("colou?r", "color colour")) # both matchPengkuantiti Julat {n,m}
Kurungan berombak memberikan bilangan atau julat yang tepat:
{3}— tepat 3{2,4}— antara 2 dan 4{2,}— 2 atau lebih
Sangat berguna untuk item yang panjangnya tetap seperti kod ZIP atau segmen nombor telefon.
import re
print(re.findall("\d{3}", "12 345 6789")) # ["345", "678"]
print(re.findall("\d{2,4}", "1 22 3333 55555"))Menggabungkan Semua Bahagian
Corak sebenar menggabungkan kelas, set, penambat dan pengkuantiti. Corak ini sepadan dengan nombor telefon US yang ringkas seperti 555-123-4567:
\d{3}-\d{3}-\d{4} — tiga digit, tanda sempang, tiga digit, tanda sempang, empat digit.
import re
text = "Call 555-123-4567 or 999-888-7777"
print(re.findall("\d{3}-\d{3}-\d{4}", text))
# ["555-123-4567", "999-888-7777"]Semakan Pantas: Pengkuantiti
Anda mahu memadankan satu atau lebih digit berturutan.
Imbas Kembali: Corak dan Kelas Aksara
Sekarang anda mengetahui asas pembinaan regex:
- Literal dan kad bebas
. - Kelas
\d \w \sserta penafiannya\D \W \S - Set tersuai
[A-Za-z]dan set dinafikan[^abc] - Penambat
^dan$ - Pengkuantiti
+ * ?dan julat{n,m}
Seterusnya: fungsi modul Python re.
Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 53
- Pelajaran
- 225
Soalan Lazim
Adakah pelajaran “Corak Regex dan Kelas Aksara” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Pelajari AI dengan Python, termasuk “Corak Regex dan Kelas Aksara”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Pelajari AI dengan Python merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Corak Regex dan Kelas Aksara”?
\d, \w, \s, ., ^, $, +, *, ?, {n,m}, kelas aksara [a-z], penafian [^...]. Anda berlatih Pelajari AI dengan Python menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Pelajari AI dengan Python?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Pelajari AI dengan Python di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.
Berapa lamakah pelajaran “Corak Regex dan Kelas Aksara” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Pelajari AI dengan Python ini?
Ya. Setiap pelajaran Pelajari AI dengan Python menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Corak Regex dan Kelas Aksara
- Modul re: search, match, findall, sub
- Kumpulan Tangkapan dan Kumpulan Bernama
- Pembersihan Teks untuk Kecerdasan Buatan dengan Regex