⊗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
Мо барои коркарди сомона, таҳлил ва шахсӣ кардан аз cookie истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан