Meerreelheid in Python reëlêre uitdrukkings
Reëlêre uitdrukkings het hul eienskappe wanneer hulle met meerreëlstringe werk. Kom ons verduidelijk dit aan die hand van die volgende string, wat gewone karakters, reëlskuiwings- en inspringkarakters bevat:
txt = '''111
222
333
444'''
Reëlskuiwing
Reëlskuiwingskarakters kan gevang word met
die opdrag '\n':
res = re.sub('\n', '!', txt)
print(res)
Die volgende string sal as resultaat vertoon word (Die spasies tussen die reëls is inspringing):
'111! 222! 333! 444'
Inspringing
Inspringingskarakters kan gevang word met
die opdrag '\t':
res = re.sub('\t', '!', txt)
print(res)
Resultaat van die kode-uitvoering:
'''
!111
!222
!333
!444
'''
Die punt se werking
Die opdrag '.' vang nie reëlskuiwingskarakters in 'n meerreëlstring nie:
res = re.sub('.', '!', txt)
print(res)
Resultaat van die kode-uitvoering:
'''
!!!
!!!!
!!!!
!!!!
'''
Enige karakter
Om alle karakters in 'n meerreëlstring te vang,
word 'n slinkse metode gebruik in die vorm van
die kombinasie [\s\S]. Hierdie konstruksie
sal alle gewone karakters en alle reëlskuiwings vind:
res = re.sub('[\s\S]', '!', txt)
print(res)
Resultaat van die kode-uitvoering:
'!!!!!!!!!!!!!!!!!!'
Dollar
Die opdrag '
sal in die meerreëlmodus
die einde van elke reël vang:
res = re.sub('
', '!', txt)
print(res)
Resultaat van die kode-uitvoering:
'''
111!
222!
333!
444!
'''
Praktiese take
Gegee die string:
'''
abc
def
ghi
jkl
'''
Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:
'''
abc!
def!
ghi!
jkl!
'''
Gegee die string:
'''
abc
def
ghi
jkl
'''
Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:
'''
! abc
! def
! ghi
! jkl
'''
Gegee die string:
'''
abc
def
ghi
jkl
'''
Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:
'''!
abc
def
ghi
jkl
!'''
Gegee die string:
'''
abc
def
ghi
jkl
'''
Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:
'''!
! abc
! def
! ghi
! jkl
!'''
Gegee die string:
'''
abc
def
ghi
jkl
'''
Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:
'''!
abc!
def!
ghi!
jkl!
!'''
Gegee die string:
'''
abc
def
ghi
jkl
'''
Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:
'''
!abc
!def
!ghi
!jkl
'''