ბრძანება 'ან' რეგულარულ გამოსახულებებში JavaScript-ში
ამ გაკვეთილში ჩვენ გავაანალიზებთ ბრძანებას
'|', რომელიც წარმოადგენს უფრო
ძლიერ ვარიანტს 'ან'-ის
შედარებით
ბრძანებასთან [ ]. ეს ბრძანება საშუალებას
იძლევა
რეგულარული გამოსახულება დაიყოს რამდენიმე ნაწილად.
ამ შემთხვევაში, საძიებელი შეიძლება მოერგოს ან ერთ
ნაწილს, ან მეორეს. მოდით შევხედოთ მაგალითებს.
მაგალითი
ამ მაგალითში ძიების ნიმუში ასეთია: სამი
ასო 'a' ან სამი ასო 'b':
let str = 'aaa bbb abb';
let res = str.replace(/a{3}|b{3}/g, '!');
შედეგად, ცვლადში ჩაიწერება შემდეგი:
'! ! abb'
მაგალითი
ამ მაგალითში ძიების ნიმუში ასეთია: სამი
ასო 'a' ან 1-დან და მეტი
ასო 'b':
let str = 'aaa bbb bbbb bbbbb axx';
let res = str.replace(/a{3}|b+/g, '!');
შედეგად, ცვლადში ჩაიწერება შემდეგი:
'! ! ! ! axx'
მაგალითი
ამ მაგალითში ძიების ნიმუში ასეთია: ⁅r⁆ერთი ან მეტი ასო ან სამი ციფრი:
let str = 'a ab abc 1 12 123';
let res = str.replace(/[a-z]+|\d{3}/g, '!');
შედეგად, ცვლადში ჩაიწერება შემდეგი:
'! ! ! 1 12 !'
მაგალითი
ვერტიკალური ხაზი შეუძლია რეგულარული გამოსახულება გაყოს არა ორ ნაწილად, არამედ ნებისმიერი რაოდენობის ნაწილად:
let str = 'aaa bbb ccc ddd';
let res = str.replace(/a+|b+|c+/g, '!');
შედეგად, ცვლადში ჩაიწერება შემდეგი:
'! ! ! ddd'
მაგალითი
თუ ვერტიკალური ხაზი მოთავსებულია მრგვალ
ფრჩხილებში, მაშინ 'ან' მოქმედებს მხოლოდ
ამ ფრჩხილების ფარგლებში.
მაგალითისთვის მოდით ვიპოვოთ სტრიქონები შემდეგი
ნიმუშის მიხედვით: თავში стоит ან 'a',
ან 'b' ერთხელ ან მეტჯერ, და შემდეგ
ორი ასო 'x':
let str = 'axx bxx bbxx exx';
let res = str.replace(/(a|b+)xx/g, '!');
შედეგად, ცვლადში ჩაიწერება შემდეგი:
'! ! ! exx'
პრაქტიკული ამოცანები
მოცემულია სტრიქონი:
let str = 'aeeea aeea aea axa axxa axxxa';
დაწერეთ რეგულარული გამოსახულება, რომელიც იპოვის სტრიქონებს
ნიმუშის მიხედვით: კიდეებზე стоят ასოები 'a',
ხოლო მათ შორის - ან ასო 'e' ნებისმიერი
რაოდენობა ან ასო 'x' ნებისმიერი
რაოდენობა.
მოცემულია სტრიქონი:
let str = 'aeeea aeea aea axa axxa axxxa';
დაწერეთ რეგულარული გამოსახულება, რომელიც იპოვის სტრიქონებს
ნიმუშის მიხედვით: კიდეებზე стоят ასოები 'a',
ხოლო მათ შორის - ან ასო 'e' ორჯერ
ან ასო 'x' ნებისმიერი რაოდენობა.