სიმბოლო "^" ნაკრებების შიგნით პითონის რეგულარულ გამონათქვამებში
როგორც იცით, სიმბოლო "^" [ ]-ის შიგნით
უარყოფას ახდენს, თუ იგი ფრჩხილების
თავშია დაწერილი. ეს ნიშნავს, რომ იგი
სპეციალური სიმბოლოა ამ ფრჩხილების შიგნით.
რომ მივიღოთ "^", როგორც ჩვეულებრივი სიმბოლო,
საჭიროა ან მისი ესკაპირება, ან პირველი
პოზიციიდან გადატანა.
მაგალითი
შემდეგ მაგალითში ძიების შაბლონი ასეთია:
პირველი სიმბოლო არის ყველაფერი, გარდა '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'
დაწერეთ რეგულარული გამონათქვამი, რომელიც იპოვის სტრიქონებს შაბლონის მიხედვით: არა "^" და არა სფეისი, და შემდეგ ორი ლათინური ასო.