⊗ppPmRgVA 258 of 447 menu

წინა ნახვა PHP რეგულარულ გამონათქვამებში

ზოგჯერ საჭიროა ამ类型的 ამოცანის ამოხსნა: მოძებნოთ სტრიქონი 'aaa' და შეცვალოთ იგი '!'-ით, მაგრამ მხოლოდ იმ შემთხვევაში, თუ 'aaa'-ის შემდეგ დგას 'x', თავად 'x' კი არ შეიცვალოს. თუ ამოცანის ამოხსნას 'პირდაპირ' ვეცდებით, ვერაფერს გავაკეთებთ:

<?php preg_replace('#aaax#', '!', 'aaax'); // იქნება '!', უნდა იყოს '!x' ?>

ამოცანის ამოსახსნელად საჭიროა გზა, რომ ვთქვათ, რომ 'x' არ უნდა შეიცვალოს. ეს კეთდება სპეციალური ფრჩხილების (?= ) მეშვეობით, რომლებიც მხოლოდ ათვალიერებენ, მაგრამ არ იღებენ თან.

ამ ფრჩხილებს ეწოდება პოზიტიური წინა ნახვა. პოზიტიური - რადგან 'x' (ჩვენს შემთხვევაში) უნდა იყოს - მხოლოდ მაშინ მოხდება ჩანაცვლება.

მოდით გამოვიყენოთ ეს ფრჩხილები ჩვენი ამოცანის გადასაჭრელად:

<?php preg_replace('#aaa(?=x)#', '!', 'aaax'); // დააბრუნებს '!x' ?>

არსებობს ნეგატიური წინა ნახვაც - (?! ) - ის, პირიქით, ამბობს, რომ რაღაც არ უნდა იყოს. შემდეგ მაგალითში ჩანაცვლება მოხდება მხოლოდ იმ შემთხვევაში, თუ 'aaa'-ის შემდეგ არ დგას 'x':

<?php preg_replace('#aaa(?!x)#', '!', 'aaab'); // დააბრუნებს '!b' ?>

მოცემულია სტრიქონი, რომელიც შეიცავს ფუნქციების სახელებს:

<?php $str = 'func1() func2() func3()'; ?>

მიიღეთ ფუნქციების სახელების მასივი სტრიქონიდან.

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

<?php $str = '<a href="" class="eee" id="zzz">'; ?>

მიიღეთ ამ თეგის ატრიბუტების სახელების მასივი.

ქართული
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
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა