Python-daky regulýar ifadelerde köp setirlilik
Regulýar ifadeler köp setirli setirler bilen işlemekde özüne mahsus aýratynlyklara eýe. Indiki setiriň mysalynda, adaty nyşanlary, setir geçiş we tabulýasiýa nyşanlaryny öz içine alýan setirde, olar bilen bilelikde öwreneliň:
txt = '''111
222
333
444'''
Setir geçişi
Setir geçiş nyşanlary '\n' buýrugy bilen tutulyp bilner:
res = re.sub('\n', '!', txt)
print(res)
Netijede indiki setir çykaryljak (setirleriň aralyklary tabulýasiýadyr):
'111! 222! 333! 444'
Tabulýasiýa
Tabulýasiýa nyşanlary '\t' buýrugy bilen tutulyp bilner:
res = re.sub('\t', '!', txt)
print(res)
Kody ýerine ýetirip netijesi:
'''
!111
!222
!333
!444
'''
Noqatyň işi
'.' buýrugy köp setirli setir üçin setir geçiş nyşanlaryny tutmaýar:
res = re.sub('.', '!', txt)
print(res)
Kody ýerine ýetirip netijesi:
'''
!!!
!!!!
!!!!
!!!!
'''
Islendik nyşan
Köp setirli setirdäki ähli nyşanlary tutmak üçin, [\s\S] görnüşindeki aýlawly ulanylyş ulanylýar. Beýle bir gurluş ähli adaty nyşanlary we ähli setir geçişlerini tapar:
res = re.sub('[\s\S]', '!', txt)
print(res)
Kody ýerine ýetirip netijesi:
'!!!!!!!!!!!!!!!!!!'
Dollar
'
buýrugy köp setirli tertipde her bir setiriň soňuny tutar:
res = re.sub('
', '!', txt)
print(res)
Kody ýerine ýetirip netijesi:
'''
111!
222!
333!
444!
'''
Amaly meseleler
Setir berlen:
'''
abc
def
ghi
jkl
'''
Bu setirden indikini ýasamak üçin regulýar ifade ýazyň:
'''
abc!
def!
ghi!
jkl!
'''
Setir berlen:
'''
abc
def
ghi
jkl
'''
Bu setirden indikini ýasamak üçin regulýar ifade ýazyň:
'''
! abc
! def
! ghi
! jkl
'''
Setir berlen:
'''
abc
def
ghi
jkl
'''
Bu setirden indikini ýasamak üçin regulýar ifade ýazyň:
'''!
abc
def
ghi
jkl
!'''
Setir berlen:
'''
abc
def
ghi
jkl
'''
Bu setirden indikini ýasamak üçin regulýar ifade ýazyň:
'''!
! abc
! def
! ghi
! jkl
!'''
Setir berlen:
'''
abc
def
ghi
jkl
'''
Bu setirden indikini ýasamak üçin regulýar ifade ýazyň:
'''!
abc!
def!
ghi!
jkl!
!'''
Setir berlen:
'''
abc
def
ghi
jkl
'''
Bu setirden indikini ýasamak üçin regulýar ifade ýazyň:
'''
!abc
!def
!ghi
!jkl
'''