Чандсатрият дар регекси Python

Регулярҳо ҳангоми кор бо сатрҳои чандсатрӣ хусусиятҳои худро доранд. Биёед бо онҳо дар мисоли сатрҳои зерин фаҳмонем, ки аломатҳои оддӣ, аломатҳои гузарони сатр ва табҳоро дар бар мегирад:

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

Гузарони сатр

Аломатҳои гузарони сатрро бо ёрии фармон '\n' гирифтан мумкин аст:

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

Дар натиҷа сатрҳои зерин барои мушоҳида пешниҳод карда мешавад (фосила байни сатрҳо табҳост):

python'111!  222!  333!  444'

Табҳо

Аломатҳои табҳоро бо ёрии фармон '\t' гирифтан мумкин аст:

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

Натиҷаи иҷрои рамз:

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

Кори нуқта

Фармон '.' барои сатрҳои чандсатрӣ аломатҳои гузарони сатрро намегирад:

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

Натиҷаи иҷрои рамз:

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

Ҳар як аломат

Барои гирифтани ҳамаи аломатҳо дар сатрҳои чандсатрӣ, усули маҳирона бо истифода аз сохти [\s\S] истифода мешавад. Чунин сохт ҳамаи аломатҳои оддӣ ва ҳамаи гузарониҳои сатрро меёбад:

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

Натиҷаи иҷрои рамз:

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

Доллар

Фармон ' дар ҳолати чандсатрӣ охири ҳар як сатрро мегирад:

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

Натиҷаи иҷрои рамз:

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

Масъалаҳои амалӣ

Задание 1

Сатр дода шудааст:

python'''
  abc
  def
  ghi
  jkl
'''

Регулярие нависед, ки аз ин сатр зеринро созад:

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

Сатр дода шудааст:

python'''
  abc
  def
  ghi
  jkl
'''

Регулярие нависед, ки аз ин сатр зеринро созад:

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

Сатр дода шудааст:

python'''
  abc
  def
  ghi
  jkl
'''

Регулярие нависед, ки аз ин сатр зеринро созад:

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

Сатр дода шудааст:

python'''
  abc
  def
  ghi
  jkl
'''

Регулярие нависед, ки аз ин сатр зеринро созад:

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

Сатр дода шудааст:

python'''
  abc
  def
  ghi
  jkl
'''

Регулярие нависед, ки аз ин сатр зеринро созад:

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

Сатр дода шудааст:

python'''
  abc
  def
  ghi
  jkl
'''

Регулярие нависед, ки аз ин сатр зеринро созад:

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