Симболот каретка внатре во множествата во регуларните изрази на Python
Како што знаете, каретката внатре во [ ]
прави негација, кога е напишана на
почетокот на заградите. Тоа значи, таа е
специјален символ внатре во овие загради. За да
ја добиете каретката како симбол, треба или
да ја екранирате, или да ја отстраните од првото
место.
Пример
Во следниот пример шаблонот за пребарување е:
првиот символ е сè освен 'd',
потоа две букви 'x':
txt = 'axx bxx ^xx dxx'
res = re.sub('[^d]xx', '!', txt)
print(res)
Како резултат во променливата ќе се запише следново:
'! ! ! dxx'
Пример
А сега шаблонот за пребарување е: првиот
симбол е 'd' или '^',
потоа две букви 'x':
txt = 'axx bxx ^xx dxx'
res = re.sub('[d^]xx', '!', txt)
print(res)
Како резултат во променливата ќе се запише следново:
'axx bxx ! !'
Пример
Можете да не ја отстранувате каретката од првото место, туку едноставно да ја екранирате со помош на обратна коса црта, и таа ќе значи самата себе:
txt = 'axx bxx ^xx dxx'
res = re.sub('[\^d]xx', '!', txt)
print(res)
Како резултат во променливата ќе се запише следново:
'axx bxx ! !'
Практични задачи
Даден е стрингот:
txt = '^xx axx ^zz bkk @ss'
Напишете регуларен израз, кој ќе ги најде стринговите според шаблонот: каретка или куче, а потоа две латински букви.
Даден е стрингот:
txt = '^xx axx ^zz bkk @ss'
Напишете регуларен израз, кој ќе ги најде стринговите според шаблонот: НЕ каретка и не куче, а потоа две латински букви.
Даден е стрингот:
txt = '^xx axx ^zz bkk'
Напишете регуларен израз, кој ќе ги најде стринговите според шаблонот: не каретка и не празно место, а потоа две латински букви.