Регуляр ифодаларда белгилар тўпламини инвертлаш
Квадрат қавс бошланишидаги шляпка '^' орқали
исталган нарсани инвертлаш мумкин.
Агар, масалан, [ab] буйруғи
'a' ёки 'b' белгисини изланса,
[^ab] буйруғи эса 'a' ва
'b' дан бошқа барча белгиларни излайди.
Мисол
Ушбу мисолда излаш намунаси шундай кўринади:
'x' белгиси, сўнг 'a' белгиси
эмас, 'b' эмас ва 'c' эмас,
сўнгра 'z' белгиси:
txt = 'xaz xbz xcz xez'
res = re.sub('x[^abc]z', '!', txt)
print(res)
Коднинг ишлаш натижаси:
'xax xbx xcx !'
Мисол
Ушбу мисолда излаш намунаси шундай кўринади:
'x' белгиси, сўнг кичик лотин ҳарфи
эмас, сўнгра 'z' белгиси:
txt = 'xaz xbz x1z xCz'
res = re.sub('x[^a-z]z', '!', txt)
print(res)
Коднинг ишлаш натижаси:
'xaz xbz ! !'
Амалий машқлар
Шаблон буйича сатрларни топадиган регуляр
ифодани ёзинг: 1 рақам, сўнг
'e' ва 'x' эмас белги,
2 рақам.
Шаблон буйича сатрларни топадиган регуляр
ифодани ёзинг: 'x' белгиси, сўнг
2 дан 7 гача рақам эмас,
'z' белгиси.
Шаблон буйича сатрларни топадиган регуляр
ифодани ёзинг: 'x' белгиси, сўнг
1 ва ундан кўп марта катта лотин ҳарфи
эмас, 'z' белгиси.
Шаблон буйича сатрларни топадиган регуляр
ифодани ёзинг: 'x' белгиси, сўнг
1 дан 5 гача рақам эмас катта
ёки кичик лотин ҳарфи ва 1 ва ундан кўп
марта, 'z' белгиси.