Metode finditer dalam Ekspresi Reguler Python
Metode finditer ditujukan untuk
mendapatkan iterator semua kecocokan dengan
regex dalam string. Pada parameter pertama
metode, kita tentukan regex yang akan
digunakan untuk mencari, pada parameter kedua - string
tempat kita mencari. Metode memeriksa semua kecocokan,
mencarinya dari kiri ke kanan. Metode mengembalikan
sebuah iterator objek pencocokan. Sintaksis
metode finditer terlihat seperti ini:
re.finditer(apa yang dicari, di mana mencari)
Mari kita temukan semua substring dengan digit dalam string kita:
txt = 'aaaa 123 bbbb 456'
print(re.finditer('\d+', txt))
Hasil eksekusi kode:
<callable_iterator object at 0x000002AA891300A0>
Sekarang mari kita deklarasikan variabel res,
yang nilainya adalah objek yang kita dapatkan
pada contoh sebelumnya. Kemudian kita ulangi
dengan loop:
txt = 'aaaa 123 bbbb 456'
res = re.finditer('\d+', txt)
for el in res:
print(el)
Setelah kode dieksekusi, akan ditampilkan dua match-objek:
<re.Match object; span=(5, 8), match='123'>
<re.Match object; span=(14, 17), match='456'>
Objek-objek ini berisi informasi tentang semua kecocokan dengan regex dalam bentuk tuple. Kita dapat menampilkan kecocokan darinya berdasarkan indeks:
for el in res:
print(el[0])
Hasil eksekusi kode:
'123'
'456'
Diberikan string:
txt = '12 aaa 34 bbb 56 ccc'
Tampilkan semua angka darinya menggunakan loop.