Csoportosító zárójelek a Python reguláris kifejezéseiben
Az előző példákban az ismétlési operátorok csak egyetlen, előttük álló karakterre hatottak. Mi a teendő, ha több karakterre kell hatást gyakorolni rájuk?
Erre szolgálnak a csoportosító zárójelek
'(' és . Működésük a következő:
ha valami csoportosító zárójelek között
áll, és közvetlenül a ')'')' után
ismétlési operátor található - az a zárójelben
lévő mindenre hatni fog.
A következő példában a keresési minta így
néz ki: betű 'x', majd a
'ab' sztring egy vagy többször,
majd a 'x' betű:
txt = 'xabx xababx xaabbx'
res = re.sub('x(ab)+x', '!', txt)
print(res)
A kód végrehajtásának eredménye:
'! ! xaabbx'
Adott egy sztring:
txt = 'ab abab abab abababab abea'
Írjon reguláris kifejezést, amely megtalálja a
sztringeket a következő minta szerint: a
'ab' sztring 1 vagy többször
ismétlődik.