Python regular ifadelerinde ýaýly aýlaw
'+', '*', '?' operatorlary
gowy, ýöne olaryň kömegi bilen takyk gaýtalanma
sanyny görkezip bolmaýar. Bu ýagdaýda
size {} operatory kömek eder.
Ol şeýle işleýär: {5}
- bäş gezek gaýtalama, {2,5} – ikiden
bäşe çenli (ikisi hem goşulmak bilen) gaýtalama,
{2,} - iki ýa-da ondan köp gezek gaýtalama.
Mysallara serediň:
Mysal
Bu mysalda gözleg şablon şuňa meňzeýär:
harplyk 'x', 'a' harplygy
bir ýa-da iki gezek, 'x' harplyk:
txt = 'xx xax xaax xaaax'
res = re.sub('xa{1,2}x', '!', txt)
print(res)
Kody ýerine ýetirmegiň netijesi:
'xx ! ! xaaax'
Mysal
Bu mysalda gözleg şablon şuňa meňzeýär:
harplyk 'x', 'a' harplygy
iki gezek we ondan köp, 'x' harplyk:
txt = 'xx xax xaax xaaax'
res = re.sub('xa{2,}x', '!', txt)
print(res)
Kody ýerine ýetirmegiň netijesi:
'xx xax ! !'
Mysal
Bu mysalda gözleg şablon şuňa meňzeýär:
harplyk 'x', 'a' harplygy
üç gezek, 'x' harplyk:
txt = 'xx xax xaax xaaax'
res = re.sub('xa{3}x', '!', txt)
print(res)
Kody ýerine ýetirmegiň netijesi:
'xx xax xaax !'
Mysal
Bu mysalda gözleg şablon şuňa meňzeýär:
'a' harplygy on gezek:
txt = 'aaa aaaaaaaaaa aaa'
res = re.sub('a{10}', '!', txt)
print(res)
Kody ýerine ýetirmegiň netijesi:
'aaa ! aaa'
Mysal
Bu mysalda şeýle bir şablon bar: harplyk
'x', 'a' harplygy üç gezek we
ondan az, 'x' harplyk. Ony
ýerine ýetirmek üçin, 3 sanyndan
öň san görkezmän, ýöne diňe
ýat çyzgy goýup bolýar:
txt = 'xx xax xaax xaaax'
res = re.sub('xa{,3}x', '!', txt)
print(res)
Kody ýerine ýetirmegiň netijesi:
'! ! ! !'
Mysal
3 öňündäki nol hem rugsat berilýär:
txt = 'xx xax xaax xaaax'
res = re.sub('xa{0,3}x', '!', txt)
print(res)
Kody ýerine ýetirmegiň netijesi:
'! ! ! !'
Amaly meseleler
Setir berlen:
txt = 'aa aba abba abbba abbbba abbbbba'
'abba', 'abbba', 'abbbba'
setirlerini we diňe olary tapýan regular ýazyň.
Setir berlen:
txt = 'aa aba abba abbba abbbba abbbbba'
'aba' görnüşindäki, içinde 'b'
3-den az (goşulmak bilen) gezek duşýan
setirleri tapýan regular ýazyň.
Setir berlen:
txt = 'aa aba abba abbba abbbba abbbbba'
'aba' görnüşindäki, içinde 'b'
4-den köp (goşulmak bilen) gezek duşýan
setirleri tapýan regular ýazyň.