Regulyar Ifodalarda Belgilar To‘plamlarini Invertatsiya qilish
Kvadrat qavs boshidagi shlyapa '^' yordamida
kerakli narsani invertatsiya qilish mumkin.
Masalan, agar [ab] buyrug‘i
'a' yoki 'b' harfini qidirsa,
[^ab] buyrug‘i 'a' va
'b' dan boshqa barcha belgilarni qidiradi.
Misol
Ushbu misolda qidirsh shabloni quyidagicha:
'x' harfi, keyin 'a'
harfi emas, 'b' emas va 'c'
emas, keyin 'z' harfi:
txt = 'xaz xbz xcz xez'
res = re.sub('x[^abc]z', '!', txt)
print(res)
Kodni bajarish natijasi:
'xax xbx xcx !'
Misol
Ushbu misolda qidirsh shabloni quyidagicha:
'x' harfi, keyin kichik
lotin harfi emas, keyin 'z' harfi:
txt = 'xaz xbz x1z xCz'
res = re.sub('x[^a-z]z', '!', txt)
print(res)
Kodni bajarish natijasi:
'xaz xbz ! !'
Amaliy vazifalar
Quyidagi shabonga mos satrlarni topadigan
regulyar ifodani yozing: 1 raqami,
keyin 'e' emas va 'x' emas
belgi, 2 raqami.
Quyidagi shabonga mos satrlarni topadigan
regulyar ifodani yozing: 'x' harfi,
keyin 2 dan 7 gacha bo‘lgan
raqam emas, 'z' harfi.
Quyidagi shabonga mos satrlarni topadigan
regulyar ifodani yozing: 'x' harfi,
keyin katta lotin harfi emas 1 yoki
undan ko‘p marta, 'z' harfi.
Quyidagi shabonga mos satrlarni topadigan
regulyar ifodani yozing: 'x' harfi,
keyin katta yoki kichik lotin harfi emas va
1 dan 5 gacha bo‘lgan raqam emas
1 yoki undan ko‘p marta,
'z' harfi.