101 of 151 menu

Njia finditer ya moduli re

Njia finditer ya moduli re hurudisha iterator wa mechi zote za usemi wa kawaida katika mstari wa maandishi. Katika parameta ya kwanza ya njia tunabainisha usemi wa kawaida. Katika parameta ya pili tunaweka mstari wa maandishi, ambao tunatafutia usemi wa kawaida. Katika parameta ya tatu ya hiari tunaweza kubainisha bendera. Njia inakagua mechi zote, zikitafuta kutoka kushoto kwenda kulia.

Sintexia

import re re.finditer(usemi wa kawaida, mstari wa maandishi, [bendera])

Mfano

Wacha tupate kila kipande cha maandishi chenye tarakimu ndani ya mstari wetu wa maandishi:

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

Matokeo ya utekelezaji wa kodi:

<callable_iterator object at 0x000002AA891300A0>

Mfano

Sasa hebu tutangaze kutofautisha res, thamani yake ikikuwa kitu kilichopatikana kwetu katika mfano uliopita. Kisha tuikamate kwa kitanzi:

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

Baada ya utekelezaji wa kodi tutapata vitu viwili vya Match object:

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

Vitu hivi vyote vina habari kuhusu mechi zote za usemi wa kawaida kwa mfumo wa tuple. Tunaweza kuzitoa mechi kutoka kwao kwa kutumia fahirisi:

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

Matokeo ya utekelezaji wa kodi:

'123' '456'

Mfano

Kwa uwazi zaidi hebu wakati wa utafutaji wa mechi tutumie mifuko. Wakati wa kukamata vitu kwa kitanzi tuonyeshe mechi ya kwanza (itakayokuwa mfuko wa sifuri), na pia vipengele vyake, pia vilivyogawanyika katika mifuko yao:

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

Baada ya utekelezaji wa kodi tutapata mfuko wa sifuri, yaani kipande chote cha maandishi, na pia herufi ya kwanza na ya pili kutoka kwenye kipande hiki cha maandishi:

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

Angalia pia

  • Njia findall ya moduli re,
    ambayo hurudisha orodha ya mechi zote katika mstari wa maandishi
  • Njia search ya moduli re,
    ambayo inatafuta mechi ya kwanza ya usemi wa kawaida katika mstari wa maandishi
  • Njia match ya moduli re,
    ambayo inatafuta mechi ya usemi wa kawaida mwanzoni mwa mstari wa maandishi
  • Njia fullmatch ya moduli re,
    ambayo inatafuta mechi zote za usemi wa kawaida katika mstari wa maandishi
  • Kitu Match object cha moduli re,
    ambacho kina habari kuhusu mechi za usemi wa kawaida
  • Njia split ya moduli re,
    ambayo inagawanya mstari wa maandishi kuwa orodha kulingana na kitenganishi maalum
Kiswahili
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Tunatumia kuki kwa ajili ya uendeshaji wa tovuti, uchambuzi na ubinafsishaji. Usindikaji wa data unafanyika kulingana na Sera ya Faragha.
kubali yote sanidi kataa