⊗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ščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј