101 of 151 menu

Kaedah finditer modul re

Kaedah finditer modul re mengembalikan iterator untuk semua padanan dengan ungkapan biasa dalam rentetan. Dalam parameter pertama kaedah, kami tentukan ungkapan biasa. Dalam parameter kedua, kami tetapkan rentetan yang dicari ungkapan biasa. Dalam parameter ketiga yang pilihan, kami boleh tetapkan bendera. Kaedah memeriksa semua padanan, mencarinya dari kiri ke kanan.

Sintaks

import re re.finditer(ungkapan_biasa, rentetan, [bendera])

Contoh

Mari cari semua subrentetan dengan digit dalam rentetan kami:

txt = 'aaaa 123 bbbb 456' res = re.finditer('\d+', txt) print(res)

Keputusan pelaksanaan kod:

<callable_iterator object at 0x000002AA891300A0>

Contoh

Sekarang mari isytihar pembolehubah res, yang nilainya ialah objek yang diperoleh kami dalam contoh sebelumnya. Kemudian ulangkannya dengan gelung:

txt = 'aaaa 123 bbbb 456' res = re.finditer('\d+', txt) for el in res: print(el)

Selepas pelaksanaan kod, kami akan mendapat dua objek Match object:

<re.Match object; span=(5, 8), match='123'> <re.Match object; span=(14, 17), match='456'>

Objek ini mengandungi maklumat tentang semua padanan dengan ungkapan biasa dalam bentuk tupel. Kami boleh keluarkan padanan daripadanya menggunakan indeks:

for el in res: print(el[0])

Keputusan pelaksanaan kod:

'123' '456'

Contoh

Untuk lebih kejelasan, mari gunakan kumpulan tangkapan (capturing groups) semasa mencari padanan. Dan semasa mengulangi objek dengan gelung, mari keluarkan padanan pertama (ia akan dianggap sebagai kumpulan tangkapan sifar), serta elemennya, yang juga seterusnya diagihkan mengikut kumpulan tangkapan:

txt = 'aaaa 123 bbbb 456' res = re.finditer('(\d)(\d)', txt) for el in res: print(el[0], el[1], el[2])

Selepas pelaksanaan kod, kami akan mendapat kumpulan tangkapan sifar, iaitu keseluruhan subrentetan, serta aksara pertama dan kedua dari subrentetan ini:

'12' '1' '2' '45' '4' '5'

Lihat juga

  • kaedah findall modul re,
    yang mengembalikan senarai semua padanan dalam rentetan
  • kaedah search modul re,
    yang mencari padanan pertama dengan ungkapan biasa dalam rentetan
  • kaedah match modul re,
    yang mencari padanan dengan ungkapan biasa pada permulaan rentetan
  • kaedah fullmatch modul re,
    yang mencari semua padanan dengan ungkapan biasa dalam rentetan
  • objek Match object modul re,
    yang mengandungi maklumat tentang padanan dengan ungkapan biasa
  • kaedah split modul re,
    yang memisahkan rentetan kepada senarai mengikut pemisah yang ditentukan
Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak