Տողի ստուգում ռեգուլյար արտահայտությամբ PHP-ում
Որոնման և փոխարինման հնարավորություններով ռեգուլյարների հնարավորությունները վերջացած չեն։ Գոյություն ունի նաև preg_match
ֆունկցիան, որն ստուգում է, արդյոք տողում կա ռեգուլյարի հետ համընկնում։
Առաջին պարամետրով ֆունկցիան ընդունում է
ռեգուլյար արտահայտություն, իսկ երկրորդով՝ որոնման
տողը։
Այս դեպքում, եթե համընկնումները շատ լինեն,
ֆունկցիան կգտնի միայն առաջինը և կավարտի իր
աշխատանքը։ Ուստի ֆունկցիան տալիս է կամ 1,
կամ 0 և օգտագործվում է պատասխանելու
հարցին՝ 'կա արդյոք որոնվածը տողում, թե ոչ'։
Կվերադարձնի մեկ՝ նշանակում է կա (բայց քանի անգամ
- պարզ չէ), կվերադարձնի զրո՝ նշանակում է չկա։
Եկեք նայենք օրինակներով։ Եկեք ստուգենք,
արդյոք տողում կա ենթատող, որը բաղկացած է
'a' տառից, կրկնված մեկ կամ ավելի անգամ։
<?php
echo preg_match('#a+#', 'eee aaa bbb'); // կտպի 1
?>
Իսկ այժմ մեր տողում որոնվածը բացակայում է, և ֆունկցիան
կտպի 0։
<?php
echo preg_match('#a+#', 'eee bbb'); // կտպի 0
?>
Որոշեք, արդյոք տողում կա 3 թվանշան
ընթացքով։
Որոշեք, արդյոք փոխանցված տողը սկսվում է
http-ով։
Որոշեք, արդյոք փոխանցված տողը սկսվում է
http-ով կամ https-ով։
Որոշեք, արդյոք փոխանցված տողը ավարտվում է
txt, html կամ php ընդլայնումով։
Որոշեք, արդյոք փոխանցված տողը ավարտվում է
jpg կամ jpeg ընդլայնումով։