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:

pythontxt = '''111
  222
  333
  444'''

Reëlskuiwing

Reëlskuiwingskarakters kan gevang word met die opdrag '\n':

pythonres = re.sub('\n', '!', txt)
print(res)

Die volgende string sal as resultaat vertoon word (Die spasies tussen die reëls is inspringing):

python'111!  222!  333!  444'

Inspringing

Inspringingskarakters kan gevang word met die opdrag '\t':

pythonres = re.sub('\t', '!', txt)
print(res)

Resultaat van die kode-uitvoering:

python'''
!111
!222
!333
!444
'''

Die punt se werking

Die opdrag '.' vang nie reëlskuiwingskarakters in 'n meerreëlstring nie:

pythonres = re.sub('.', '!', txt)
print(res)

Resultaat van die kode-uitvoering:

python'''
  !!!
  !!!!
  !!!!
  !!!!
'''

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:

pythonres = re.sub('[\s\S]', '!', txt)
print(res)

Resultaat van die kode-uitvoering:

python'!!!!!!!!!!!!!!!!!!'

Dollar

Die opdrag ' sal in die meerreëlmodus die einde van elke reël vang:

pythonres = re.sub('
', '!', txt)
print(res)

Resultaat van die kode-uitvoering:

python'''
  111!
  222!
  333!
  444!
'''

Praktiese take

Задание 1

Gegee die string:

python'''
  abc
  def
  ghi
  jkl
'''

Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:

python'''
  abc!
  def!
  ghi!
  jkl!
'''
Задание 2

Gegee die string:

python'''
  abc
  def
  ghi
  jkl
'''

Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:

python'''
!  abc
!  def
!  ghi
!  jkl
'''
Задание 3

Gegee die string:

python'''
  abc
  def
  ghi
  jkl
'''

Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:

python'''!
  abc
  def
  ghi
  jkl
!'''
Задание 4

Gegee die string:

python'''
  abc
  def
  ghi
  jkl
'''

Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:

python'''!
!  abc
!  def
!  ghi
!  jkl
!'''
Задание 5

Gegee die string:

python'''
  abc
  def
  ghi
  jkl
'''

Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:

python'''!
  abc!
  def!
  ghi!
  jkl!
!'''
Задание 6

Gegee die string:

python'''
  abc
  def
  ghi
  jkl
'''

Skryf 'n reëlêre uitdrukking wat hierdie string in die volgende verander:

python'''
  !abc
  !def
  !ghi
  !jkl
'''