Python-да түзуліктердің көпжолдылығы
Түзуліктер көпжолды жолдармен жұмыс істегенде өзгешеліктерге ие. Келесі жолдың мысалында олармен танысайық, ол қарапайым таңбаларды, жол аудару таңбаларын және табуляцияларды қамтиды:
txt = '''111
222
333
444'''
Жол аудару
Жол аудару таңбаларын '\n' командасы
арқылы ұстауға болады:
res = re.sub('\n', '!', txt)
print(res)
Нәтижеде келесі жол шығады (жолдар арасындағы аралықтар - бұл табуляция):
'111! 222! 333! 444'
Табуляция
Табуляция таңбаларын '\t' командасы
арқылы ұстауға болады:
res = re.sub('\t', '!', txt)
print(res)
Кодты орындау нәтижесі:
'''
!111
!222
!333
!444
'''
Нүктенің жұмысы
'.' командасы көпжолды жол үшін
жол аудару таңбаларын ұстамайды:
res = re.sub('.', '!', txt)
print(res)
Кодты орындау нәтижесі:
'''
!!!
!!!!
!!!!
!!!!
'''
Кез келген таңба
Көпжолды жолдағы барлық таңбаларды ұстау
үшін [\s\S] тіркесімі түріндегі айла
қолданылады. Мұндай құрылым барлық қарапайым
таңбаларды және барлық жол аударуларды табады:
res = re.sub('[\s\S]', '!', txt)
print(res)
Кодты орындау нәтижесі:
'!!!!!!!!!!!!!!!!!!'
Доллар
'
командасы көпжолды режимде
әрбір жолдың соңын ұстайды:
res = re.sub('
', '!', txt)
print(res)
Кодты орындау нәтижесі:
'''
111!
222!
333!
444!
'''
Практикалық есептер
Берілген жол:
'''
abc
def
ghi
jkl
'''
Мына жолды алу үшін түзулік жазыңыз:
'''
abc!
def!
ghi!
jkl!
'''
Берілген жол:
'''
abc
def
ghi
jkl
'''
Мына жолды алу үшін түзулік жазыңыз:
'''
! abc
! def
! ghi
! jkl
'''
Берілген жол:
'''
abc
def
ghi
jkl
'''
Мына жолды алу үшін түзулік жазыңыз:
'''!
abc
def
ghi
jkl
!'''
Берілген жол:
'''
abc
def
ghi
jkl
'''
Мына жолды алу үшін түзулік жазыңыз:
'''!
! abc
! def
! ghi
! jkl
!'''
Берілген жол:
'''
abc
def
ghi
jkl
'''
Мына жолды алу үшін түзулік жазыңыз:
'''!
abc!
def!
ghi!
jkl!
!'''
Берілген жол:
'''
abc
def
ghi
jkl
'''
Мына жолды алу үшін түзулік жазыңыз:
'''
!abc
!def
!ghi
!jkl
'''