RegEx Python
- Hal Sebelumnya JSON Python
- Hal Berikutnya PIP Python
RegEx atau ekspresi reguler adalah urutan karakter yang digunakan untuk membentuk mode pencarian.
RegEx dapat digunakan untuk memeriksa apakah string mengandung mode pencarian yang ditentukan.
RegEx
Python menyediakan modul yang bernama re
paket bawaan, dapat digunakan untuk menangani ekspresi reguler
Impor re
Modul:
import re
RegEx di Python
Impor re
Modul setelah dapat mulai menggunakan ekspresi reguler
Contoh
Cari string untuk melihat apakah ia mulai dengan "China" dan berakhir dengan "country"
import re txt = "China adalah negara yang besar" x = re.search("^China.*country$", txt)
Fungsi RegEx
re
Modul menyediakan grup fungsi yang memungkinkan kita untuk mencari string untuk cocok
Fungsi | Deskripsi |
---|---|
findall | Kembalikan daftar yang mengandung semua cocok |
search | Kembalikan objek Match jika ada cocok di setiap posisi string |
split | Kembalikan daftar yang dibagi string dalam setiap cocok |
sub | Ganti string untuk satu atau beberapa cocok |
Karakter meta
Karakter meta adalah karakter yang memiliki makna khusus:
Karakter | Deskripsi | Contoh | TIY |
---|---|---|---|
[] | Sebuah kumpulan karakter | "[a-m]" | Coba saja |
\ | Menandai sequens khusus (juga dapat digunakan untuk mengesampingkan karakter khusus) | "\d" | Coba saja |
. | Setiap karakter (kecuali karakter baris kosong) | "he..o" | Coba saja |
^ | Mulai dengan | "^hello" | Coba saja |
$ | Berakhir dengan | "world$" | Coba saja |
* | Kurang lebih kali nol atau beberapa kali | "aix*" | Coba saja |
+ | Kali tunggal atau beberapa kali | "aix+" | Coba saja |
{} | Kurang lebih spesifik penampilan kali | "al{2}" | Coba saja |
| | Kedua-duanya | "falls|stays" | Coba saja |
() | Penangkapan dan Grup |
Sequens khusus
Sequens khusus adalah \
diikuti karakter di bawah tabel, memiliki makna khusus:
Karakter | Deskripsi | Contoh | TIY |
---|---|---|---|
\A | Kembalikan cocok jika karakter yang ditentukan berada di awal string | "\AThe" | Coba saja |
\b | Kembalikan cocok yang karakter yang ditentukan berada di awal kata atau di akhir |
r"\bain" r"rain\b" |
Coba saja Coba saja |
\B | Kembalikan cocok yang karakter yang ditentukan ada tetapi tidak di awal kata (atau di akhir) |
r"\Bain" r"rain\B" |
Coba saja Coba saja |
\d | Kembalikan cocok yang string mengandung angka (angka 0-9) | "\d" | Coba saja |
\D | Kembalikan cocok yang string tidak mengandung angka | "\D" | Coba saja |
\s | Kembalikan cocok yang string mengandung karakter kosong | "\s" | Coba saja |
\S | Kembalikan cocok yang string tidak mengandung karakter kosong | "\S" | Coba saja |
\w | Kembalikan cocok yang string mengandung karakter kata (Dari karakter a sampai Z, angka 0 sampai 9 dan karakter garis bawah _) |
"\w" | Coba saja |
\W | Kembalikan cocok yang string tidak mengandung karakter kata | "\W" | Coba saja |
\Z | Kembalikan cocok jika karakter yang ditentukan berada di akhir string | "Spain\Z" | Coba saja |
Kumpulan (Set)
Koleksi (Set) adalah pasangan tanda kurung yang bertemu []
Sebuah grup karakter di dalam tanda kurung yang memiliki arti khusus:
Koleksi | Deskripsi | Coba saja |
---|---|---|
[arn] | Mengembalikan cocok yang ada di antara karakter yang ditentukan (a, r, atau n) salah satunya | Coba saja |
[a-n] | Mengembalikan cocok setiap karakter kecil antara a dan n | Coba saja |
[^arn] | Mengembalikan cocok setiap karakter kecuali a, r, dan n | Coba saja |
[0123] | Mengembalikan cocok yang ada di antara nomor yang ditentukan (0, 1, 2, atau 3) | Coba saja |
[0-9] | Mengembalikan cocok setiap angka antara 0 dan 9 | Coba saja |
[0-5][0-9] | Mengembalikan cocok setiap angka antara 0 dan 9 | Coba saja |
[a-zA-Z] | Mengembalikan cocok setiap karakter antara a dan z, kecil atau besar | Coba saja |
[+] | Dalam koleksi, +, *, ., |, (), $, {} tidak memiliki arti khusus, jadi [+] berarti: mengembalikan cocok setiap karakter + di string | Coba saja |
Fungsi findall()
findall()
Fungsi mengembalikan daftar yang mengandung semua cocok.
Contoh
Cetak daftar cocok semua:
import re str = "China adalah negara yang besar" x = re.findall("a", str) print(x)
Daftar ini mengandung cocok yang ditemukan berdasarkan urutan.
Jika tidak ditemukan cocok, mengembalikan daftar kosong:
Contoh
Jika tidak ditemukan cocok, mengembalikan daftar kosong:
import re str = "China adalah negara yang besar" x = re.findall("USA", str) print(x)
Fungsi search()
search()
Fungsi mencari cocok di string, jika ada cocok mengembalikan objek Match.
Jika ada beberapa cocok, hanya mengembalikan cocok pertama:
Contoh
Cari karakter spasi pertama di string:
import re str = "China adalah negara yang besar" x = re.search("\s", str) print("Karakter spasi pertama berada di posisi:", x.start())
Jika tidak ditemukan cocok, nilai yang dikembalikan None
:
Contoh
Cari tanpa mengembalikan cocok:
import re str = "China adalah negara yang besar" x = re.search("USA", str) print(x)
Fungsi split()
split()
Fungsi mengembalikan daftar, di mana string dipotong setiap kali cocok:
Contoh
Memotong di setiap karakter spasi:
import re str = "China adalah negara yang besar" x = re.split("\s", str) print(x)
Anda dapat menentukan maxsplit
Parameter untuk mengawasi jumlah penyebaran:
Contoh
Hanya memotong string di tempat pertama muncul:
import re str = "China adalah negara yang besar" x = re.split("\s", str, 1) print(x)
Fungsi sub()
sub()
Fungsi mengganti yang cocok dengan teks yang dipilih Anda:
Contoh
Ganti setiap karakter spasi dengan angka 9:
import re str = "China adalah negara yang besar" x = re.sub("\s", "9", str) print(x)
Anda dapat menentukan count
Parameter untuk mengendalikan jumlah penggantian:
Contoh
Ganti pertama dan kedua kali muncul:
import re str = "China adalah negara yang besar" x = re.sub("\s", "9", str, 2) print(x)
Objek Match
Objek Match adalah objek yang mengandung informasi tentang pencarian dan hasil.
Keterangan:Jika tidak ada yang cocok, nilai yang kembalikan None
dengan tidak Match objek.
Contoh
Pencarian akan kembali dengan objek Match:
import re str = "China adalah negara yang besar" x = re.search("a", str) print(x) # akan mencetak sebuah objek
Objek Match menyediakan atribut dan metode untuk mengambil informasi tentang pencarian dan hasil:
span()
Tupel yang kembali termasuk posisi awal dan akhir yang cocok.string
Kembalikan string yang disampaikan ke fungsigroup()
Kembalikan bagian string yang cocok
Contoh
Cetak posisi muncul pertama yang cocok (posisi awal dan akhir):
Cari ekspresi reguler untuk setiap kata yang dimulai dengan huruf besar "C":
import re str = "China adalah negara yang besar" x = re.search(r"\bC\w+", str) print(x.span())
Contoh
Cetak string yang disampaikan ke fungsi:
import re str = "China adalah negara yang besar" x = re.search(r"\bC\w+", str) print(x.string)
Contoh
Cetak bagian string yang cocok.
Cari ekspresi reguler untuk setiap kata yang dimulai dengan huruf besar "C":
import re str = "China adalah negara yang besar" x = re.search(r"\bC\w+", str) print(x.group())
Keterangan:Jika tidak ada yang cocok, nilai yang kembalikan None
dengan tidak Match objek.
- Hal Sebelumnya JSON Python
- Hal Berikutnya PIP Python