⊗pyPmREChS 40 of 129 menu

Grupet e karaktereve në shprehjet e rregullta të Python

Grupet e karaktereve \d dhe \w nuk janë shumë fleksibël. Madje një detyrë kaq e thjeshtë, si gjetja e të gjitha shkronjave, por jo shifrave - nuk mund të zgjidhet prej tyre. Për detyra të tilla duhet të përdoren kllapat katrore, që përfaqësojnë operacionin 'ose'.

Kllapat katrore zëvendësojnë një karakter, cilindo nga ata të listuar brenda. Për shembull, kështu: x[abc]x - ne po themi se në anët duhet të jenë shkronjat x, dhe brenda - një karakter: ose 'a', ose 'b', ose 'c'.

Pas kllapave katrore mund të shkruhen operatorë përsëritjeje. Për shembull, kështu: x[abc]+x - ne po themi se brenda x mund të ketë çdo numër karakteresh 'a', 'b' dhe 'c' - në çdo kombinim.

Jo vetëm që mund të listohen karaktere, por mund të krijohen grupe karakteresh, duke shkruar midis dy karaktereve një vizë. Për shembull, kështu: [a-d] - ne marrim të gjithë karakteret nga 'a' deri në 'd'.

Le të shohim shembuj.

Shembull

Në këtë shembull modeli i kërkimit duket kështu: midis x çdo shkronjë nga 'a' deri në 'z':

<+Python+> txt = 'xax xbx xcx x@x' res = re.sub('x[a-z]x', '!', txt) print(res) <-python->

Rezultati i ekzekutimit të kodit:

'! ! ! x@x'

Shembull

Në këtë shembull modeli i kërkimit duket kështu: midis x çdo shkronjë nga 'a' deri në 'k':

txt = 'xax xbx xmx x@x' res = re.sub('x[a-k]x', '!', txt) print(res)

Rezultati i ekzekutimit të kodit:

'! ! xmx x@x'

Shembull

Në këtë shembull modeli i kërkimit duket kështu: midis x çdo shkronjë nga 'A' deri në 'Z':

txt = 'xax xBx xcx x@x' res = re.sub('x[A-Z]x', '!', txt) print(res)

Rezultati i ekzekutimit të kodit:

'xax ! xcx x@x'

Shembull

Në këtë shembull modeli i kërkimit duket kështu: midis x çdo shifër nga 0 deri në 9:

txt = 'xax x1x x3x x5x x@x' res = re.sub('x[0-9]x', '!', txt) print(res)

Rezultati i ekzekutimit të kodit:

'xax ! ! ! x@x'

Shembull

Në këtë shembull modeli i kërkimit duket kështu: midis x çdo shifër nga 3 deri në 7:

txt = 'xax x1x x3x x5x x@x' res = re.sub('x[3-7]x', '!', txt) print(res)

Rezultati i ekzekutimit të kodit:

'xax x1x ! ! x@x'

Shembull

Në këtë shembull modeli i kërkimit duket kështu: midis x çdo shkronjë nga 'a' deri në 'z' ose shifër nga 1 deri në 9:

txt = 'xax x1x x3x x5x x@x' res = re.sub('x[a-z1-9]x', '!', txt) print(res)

Rezultati i ekzekutimit të kodit:

'! ! ! ! x@x'

Shembull

Në këtë shembull modeli i kërkimit duket kështu: midis x çdo shkronjë nga 'a' deri në 'z' ose shkronjë nga 'A' deri në 'Z':

txt = 'xax xBx xcx x5x x@x' res = re.sub('x[a-zA-Z]x', '!', txt) print(res)

Rezultati i ekzekutimit të kodit:

'! ! ! x5x x@x'

Shembull

Në këtë shembull modeli i kërkimit duket kështu: midis x çdo shkronjë nga 'a' deri në 'z' ose shifrat 1, 2:

txt = 'xax xbx x1x x2x x3x' res = re.sub('x[a-z12]x', '!', txt) print(res)

Rezultati i ekzekutimit të kodit:

'! ! ! ! x3x'

Shembull

Në këtë shembull modeli i kërkimit duket kështu: midis x shkronjat nga 'a' deri në 'z' në sasi nga 1 e lart:

txt = 'xx xabesx xaadx x123x xa3x' res = re.sub('x[a-z]+x', '!', txt) print(res)

Rezultati i ekzekutimit të kodit:

'xx ! ! ! x123x xa3x'

Shembull

Le ta bëjmë që numri i shkronjave të mund të jetë edhe zero:

txt = 'xx xabesx xaadx x123x xa3x' res = re.sub('x[a-z]*x', '!', txt) print(res)

Si rezultat do të marrim:

'! ! ! ! x123x xa3x'

Shembull

Brenda kllapave katrore mund të përcaktohen edhe karaktere të ekranizuar. Le të gjejmë sekuencën e shkronjave dhe shifrave, që përsëritet zero ose më shumë herë:

txt = 'xx x@x xadx xas12x xa3x' res = re.sub('x[a-z\d]*x', '!', txt) print(res)

Rezultati i ekzekutimit të kodit:

'! x@x ! ! !'

Shembull

Nëse duhet të përcaktojmë edhe kllapa katrore tjera, atëherë edhe ato domosdoshmërisht i ekranizojmë:

txt = 'xx xrx xas[]x x3x' res = re.sub('x[a-z\[\]]*x', '!', txt) print(res)

Rezultati i ekzekutimit të kodit:

'! ! ! x3x'

Detyra praktike

Është dhënë një varg:

txt = 'aba aea aca aza axa'

Shkruani një shprehje të rregullt, që do të gjejë sipas modelit të mëposhtëm: në anët janë shkronjat 'a', dhe midis tyre - shkronja 'b', 'e' ose 'x'.

Është dhënë një varg:

txt = 'a1a a3a a7a a9a aba'

Shkruani një shprehje të rregullt, që do të gjejë sipas modelit të mëposhtëm: në anët janë shkronjat 'a', dhe midis tyre - shifër nga 3 deri në 6.

Është dhënë një varg:

txt = 'aba aea afa aha aga'

Shkruani një shprehje të rregullt, që do të gjejë sipas modelit të mëposhtëm: në anët janë shkronjat 'a', dhe midis tyre - shkronjë nga 'a' deri në 'g'.

Është dhënë një varg:

txt = 'aba aea afa aha aga'

Shkruani një shprehje të rregullt, që do të gjejë sipas modelit të mëposhtëm: në anët janë shkronjat 'a', dhe midis tyre - shkronjë nga 'a' deri në 'f' dhe nga 'j' deri në 'z'.

Është dhënë një varg:

txt = 'aAa aea aEa aJa a3a'

Shkruani një shprehje të rregullt, që do të gjejë sipas modelit të mëposhtëm: në anët janë shkronjat 'a', dhe midis tyre - shkronjë nga 'a' deri në 'f' dhe nga 'A' deri në 'D'.

Është dhënë një varg:

txt = 'aAXa aeffa aGha aza ax23a a3sSa'

Shkruani një shprehje të rregullt, që do të gjejë sipas modelit të mëposhtëm: në anët janë shkronjat 'a', dhe midis tyre - shkronja të vogla latinje, pa prekur të tjerat.

Është dhënë një varg:

txt = 'aAXa aeffa aGha aza ax23a a3sSa'

Shkruani një shprehje të rregullt, që do të gjejë sipas modelit të mëposhtëm: në anët janë shkronjat 'a', dhe midis tyre - shkronja të vogla dhe të mëdha latine, pa prekur të tjerat.

Është dhënë një varg:

txt = 'aAXa aeffa aGha aza ax23a a3sSa'

Shkruani një shprehje të rregullt, që do të gjejë sipas modelit të mëposhtëm: në anët janë shkronjat 'a', dhe midis tyre - shkronja të vogla latinje dhe shifra, pa prekur të tjerat.

Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo