⊗pyPmREChS 40 of 129 menu

სიმბოლოების ნაკრები Python-ის რეგულარულ გამოსახულებებში

სიმბოლოთა ჯგუფები \d და \w არ არის ძალიან მოქნილი. უბრალო ამოცანაც კი, როგორიცაა ყველა ასოს პოვნა, მაგრამ არა ციფრები - ვერ წყდება მათი მეშვეობით. ასეთი ამოცანებისთვის უნდა გამოიყენოთ კვადრატული ფრჩხილები, რომლებიც წარმოადგენენ 'ან' ოპერაციას.

კვადრატული ფრჩხილები ცვლის ერთ სიმბოლოს, ნებისმიერს მათ შიგნით ჩამოთვლილთაგან. მაგალითად, ასე: x[abc]x - ჩვენ ვამბობთ, რომ კიდეებზე უნდა იდგეს ასო იქსი, ხოლო შიგნით - ერთი სიმბოლო: ან 'a', ან 'b', ან 'c'.

კვადრატული ფრჩხილების შემდეგ შეგიძლიათ დაწეროთ გამეორების ოპერატორები. მაგალითად, ასე: x[abc]+x - ჩვენ ვამბობთ, რომ იქსებს შორის შეიძლება იყოს ნებისმიერი რაოდენობის სიმბოლო 'a', 'b' და 'c' - ნებისმიერ კომბინაციაში.

შეგიძლიათ არა მხოლოდ სიმბოლოების ჩამოთვლა, არამედ სიმბოლოთა ჯგუფების შექმნა, ორ სიმბოლოს შორის დეფისის ჩაწერით. მაგალითად, ასე: [a-d] - ჩვენ ვიღებთ ყველა სიმბოლოს 'a'-დან 'd'-მდე.

მოდით შევხედოთ მაგალითებს.

მაგალითი

ამ მაგალითში ძიების შაბლონი ასე გამოიყურება: იქსებს შორის ნებისმიერი ასო 'a'-დან 'z'-მდე:

<+Python+> txt = 'xax xbx xcx x@x' res = re.sub('x[a-z]x', '!', txt) print(res) <-python->

კოდის შესრულების შედეგი:

'! ! ! x@x'

მაგალითი

ამ მაგალითში ძიების შაბლონი ასე გამოიყურება: იქსებს შორის ნებისმიერი ასო 'a'-დან 'k'-მდე:

txt = 'xax xbx xmx x@x' res = re.sub('x[a-k]x', '!', txt) print(res)

კოდის შესრულების შედეგი:

'! ! xmx x@x'

მაგალითი

ამ მაგალითში ძიების შაბლონი ასე გამოიყურება: იქსებს შორის ნებისმიერი ასო 'A'-დან 'Z'-მდე:

txt = 'xax xBx xcx x@x' res = re.sub('x[A-Z]x', '!', txt) print(res)

კოდის შესრულების შედეგი:

'xax ! xcx x@x'

მაგალითი

ამ მაგალითში ძიების შაბლონი ასე გამოიყურება: იქსებს შორის ნებისმიერი ციფრი 0-დან 9-მდე:

txt = 'xax x1x x3x x5x x@x' res = re.sub('x[0-9]x', '!', txt) print(res)

კოდის შესრულების შედეგი:

'xax ! ! ! x@x'

მაგალითი

ამ მაგალითში ძიების შაბლონი ასე გამოიყურება: იქსებს შორის ნებისმიერი ციფრი 3-დან 7-მდე:

txt = 'xax x1x x3x x5x x@x' res = re.sub('x[3-7]x', '!', txt) print(res)

კოდის შესრულების შედეგი:

'xax x1x ! ! x@x'

მაგალითი

ამ მაგალითში ძიების შაბლონი ასე გამოიყურება: იქსებს შორის ნებისმიერი ასო 'a'-დან 'z'-მდე ან ციფრი 1-დან 9-მდე:

txt = 'xax x1x x3x x5x x@x' res = re.sub('x[a-z1-9]x', '!', txt) print(res)

კოდის შესრულების შედეგი:

'! ! ! ! x@x'

მაგალითი

ამ მაგალითში ძიების შაბლონი ასე გამოიყურება: იქსებს შორის ნებისმიერი ასო 'a'-დან 'z'-მდე ან ასო 'A'-დან 'Z'-მდე:

txt = 'xax xBx xcx x5x x@x' res = re.sub('x[a-zA-Z]x', '!', txt) print(res)

კოდის შესრულების შედეგი:

'! ! ! x5x x@x'

მაგალითი

ამ მაგალითში ძიების შაბლონი ასე გამოიყურება: იქსებს შორის ნებისმიერი ასო 'a'-დან 'z'-მდე ან ციფრები 1, 2:

txt = 'xax xbx x1x x2x x3x' res = re.sub('x[a-z12]x', '!', txt) print(res)

კოდის შესრულების შედეგი:

'! ! ! ! x3x'

მაგალითი

ამ მაგალითში ძიების შაბლონი ასე გამოიყურება: იქსებს შორის ასო 'a'-დან 'z'-მდე 1 ან მეტი რაოდენობით:

txt = 'xx xabesx xaadx x123x xa3x' res = re.sub('x[a-z]+x', '!', txt) print(res)

კოდის შესრულების შედეგი:

'xx ! ! ! x123x xa3x'

მაგალითი

გავხადოთ ისე, რომ ასოების რაოდენობა შეიძლება იყოს ნულიც:

txt = 'xx xabesx xaadx x123x xa3x' res = re.sub('x[a-z]*x', '!', txt) print(res)

შედეგად მივიღებთ:

'! ! ! ! x123x xa3x'

მაგალითი

კვადრატული ფრჩხილების შიგნით ასევე შეიძლება ეკრანირებული სიმბოლოების მითითება. მოდით ვიპოვოთ ასოებისა და ციფრების მიმდევრობა, რომელიც მეორდება ნულზე მეტი ან ტოლი რაოდენობით:

txt = 'xx x@x xadx xas12x xa3x' res = re.sub('x[a-z\d]*x', '!', txt) print(res)

კოდის შესრულების შედეგი:

'! x@x ! ! !'

მაგალითი

თუ კიდევ ერთი კვადრატული ფრჩხილების მითითება გვჭირდება, მაშინ მათი ეკრანირებაც აუცილებლად გვჭირდება:

txt = 'xx xrx xas[]x x3x' res = re.sub('x[a-z\[\]]*x', '!', txt) print(res)

კოდის შესრულების შედეგი:

'! ! ! x3x'

პრაქტიკული ამოცანები

მოცემულია სტრიქონი:

txt = 'aba aea aca aza axa'

დაწერეთ რეგულარული გამოსახულება, რომელიც იპოვის შემდეგი შაბლონით: კიდეებზე დგას ასო 'a', ხოლო მათ შორის - ასო 'b', 'e' ან 'x'.

მოცემულია სტრიქონი:

txt = 'a1a a3a a7a a9a aba'

დაწერეთ რეგულარული გამოსახულება, რომელიც იპოვის შემდეგი შაბლონით: კიდეებზე დგას ასო 'a', ხოლო მათ შორის - ციფრი 3-დან 6-მდე.

მოცემულია სტრიქონი:

txt = 'aba aea afa aha aga'

დაწერეთ რეგულარული გამოსახულება, რომელიც იპოვის შემდეგი შაბლონით: კიდეებზე დგას ასო 'a', ხოლო მათ შორის - ასო 'a'-დან 'g'-მდე.

მოცემულია სტრიქონი:

txt = 'aba aea afa aha aga'

დაწერეთ რეგულარული გამოსახულება, რომელიც იპოვის შემდეგი შაბლონით: კიდეებზე დგას ასო 'a', ხოლო მათ შორის - ასო 'a'-დან 'f'-მდე და 'j'-დან 'z'-მდე.

მოცემულია სტრიქონი:

txt = 'aAa aea aEa aJa a3a'

დაწერეთ რეგულარული გამოსახულება, რომელიც იპოვის შემდეგი შაბლონით: კიდეებზე დგას ასო 'a', ხოლო მათ შორის - ასო 'a'-დან 'f'-მდე და 'A'-დან 'D'-მდე.

მოცემულია სტრიქონი:

txt = 'aAXa aeffa aGha aza ax23a a3sSa'

დაწერეთ რეგულარული გამოსახულება, რომელიც იპოვის შემდეგი შაბლონით: კიდეებზე დგას ასო 'a', ხოლო მათ შორის - პატარა ლათინური ასოები, სხვების შეუხებლად.

მოცემულია სტრიქონი:

txt = 'aAXa aeffa aGha aza ax23a a3sSa'

დაწერეთ რეგულარული გამოსახულება, რომელიც იპოვის შემდეგი შაბლონით: კიდეებზე დგას ასო 'a', ხოლო მათ შორის - პატარა და დიდი ლათინური ასოები, სხვების შეუხებლად.

მოცემულია სტრიქონი:

txt = 'aAXa aeffa aGha aza ax23a a3sSa'

დაწერეთ რეგულარული გამოსახულება, რომელიც იპოვის შემდეგი შაბლონით: კიდეებზე დგას ასო 'a', ხოლო მათ შორის - პატარა ლათინური ასოები და ციფრები, სხვების შეუხებლად.

ქართული
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語Қазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა