Pelajari AI dengan Python · Pelajaran

Corak Regex dan Kelas Aksara

\d, \w, \s, ., ^, $, +, *, ?, {n,m}, kelas aksara [a-z], penafian [^...].

Pelajaran 1 daripada 413 langkah

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")))  # False

Pengkuantiti: + * ?

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 match

Pengkuantiti 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 \s serta 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.

Percuma untuk bermula

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

  1. Corak Regex dan Kelas Aksara
  2. Modul re: search, match, findall, sub
  3. Kumpulan Tangkapan dan Kumpulan Bernama
  4. Pembersihan Teks untuk Kecerdasan Buatan dengan Regex
← Kembali ke Pelajari AI dengan Python