⊗pyPmRESF 73 of 129 menu

Flag untuk String Regex di Python

Untuk mengatur flag sebagai salah satu parameter opsional untuk metode yang bekerja dengan regex, gunakan sintaks berikut:

flags=re.nama_flag

Flag Utama untuk Bekerja dengan Regex

Flag Fungsi
re.IGNORECASE Mengabaikan huruf besar/kecil dari karakter.
re.DOTALL Titik mewakili karakter apa pun, termasuk baris baru.
re.I Membuat pencarian tidak peka terhadap huruf besar/kecil.
re.L Mencari kata sesuai dengan bahasa saat ini. Interpretasi ini mempengaruhi grup alfabet (\w dan \W), serta perilaku batas kata (\b dan \B).
re.M Karakter $ melakukan pencarian di akhir setiap baris teks (bukan hanya akhir teks) dan karakter ^ melakukan pencarian di awal setiap baris teks (bukan hanya di awal teks).
re.S Mengubah nilai titik (.) menjadi cocok dengan karakter apa pun, termasuk baris baru.
re.U Menginterpretasikan huruf sesuai dengan set karakter Unicode. Flag ini mempengaruhi perilaku \w, \W, \b, \B. Di Python 3+ flag ini diatur secara default.
re.X Memungkinkan sintaks ekspresi reguler multibaris. Ini mengabaikan spasi di dalam pola (kecuali spasi di dalam set [] atau ketika di-escape dengan backslash) dan memperlakukan '#' yang tidak di-escape sebagai komentar.

Contoh

Dengan flag re.IGNORECASE Anda dapat mengabaikan huruf besar/kecil karakter. Mari lihat bagaimana hal ini dilakukan. Dalam contoh ini regex hanya akan menemukan huruf kecil:

txt = 'aaa bbb CCC DDD' res = re.sub('[a-z]+', '!', txt) print(res)

Hasil eksekusi kode:

'! ! CCC DDD'

Contoh

Dan sekarang tambahkan flag re.IGNORECASE ke parameter keempat metode, dan regex akan mulai mencari karakter di semua huruf:

txt = 'aaa AAA bbb BBB' res = re.sub('[a-z]+', '!', txt, flags=re.IGNORECASE) print(res)

Hasil eksekusi kode:

'! ! ! !'

Contoh

Mari temukan semua baris baru dengan regex:

txt = '''aaa bbb''' res = re.sub('\n', '!', txt) print(res)

Hasil kode yang dieksekusi:

'aaa!bbb'

Contoh

Tetapi, jika perlu mengganti semua karakter, maka dengan menempatkan titik di regex, baris baru tidak akan tertangkap:

txt = '''aaa bbb''' res = re.sub('.', '!', txt) print(res)

Hasil kode yang dieksekusi:

'!!! !!!'

Contoh

Untuk memperbaiki kesalahan ini, sebaiknya terapkan flag re.DOTALL:

res = re.sub('.', '!', txt, flags=re.DOTALL) print(res)

Hasil kode yang dieksekusi:

'!!!!!!!'

Contoh

Di parameter, beberapa flag juga dapat diteruskan, dengan menempatkan operator + di antara mereka. Pertama, mari ganti huruf 'a' di akhir baris:

txt = ''' aaa AAA aaa''' res = re.sub('aaa$', '!', txt) print(res)

Hasil kode yang dieksekusi:

''' aaa AAA ! '''

Contoh

Sekarang atur flag re.M:

res = re.sub('aaa$', '!', txt, flags=re.M) print(res)

Hasil kode yang dieksekusi:

''' ! AAA ! '''

Contoh

Sekarang mari terapkan juga flag untuk mengabaikan huruf besar/kecil:

res = re.sub('aaa$', '!', txt, flags=re.M+re.IGNORECASE) print(res)

Hasil kode yang dieksekusi:

''' ! ! ! '''
Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak