Shprehje të rregullta zëvendësim i karaktereve php. Shprehje të rregullta PHP. Klasat e personazheve të përjashtuara

PHP, siç i ka hije një gjuhe programimi moderne, i ofron zhvilluesit një sërë funksionesh për përdorimin e shprehjeve të rregullta. Ju mund të kërkoni për shfaqje të vargjeve në vargje të tjera duke përdorur kritere komplekse.

  • PREG_PATTERN_ORDER;
  • PREG_SET_ORDER.

Rendit sipas Opsionit 1 i grupon rezultatet e kërkimit sipas numrit të shprehjes së rregullt (parazgjedhja). Në rastin e dytë, rezultatet grupohen sipas vendndodhjes së tyre në rresht.

Simboli - element shabllon

Është e rëndësishme të mbani mend se shablloni funksionon me simbole. Programimi ka harruar prej kohësh se çfarë është lloji i të dhënave "karakter". Gjuhët moderne nuk shkojnë poshtë konceptit të një "vargu", por në lidhje me modelin, duhet të kuptoni: simbolet manipulohen këtu.

Ndërtimi i një shablloni është, para së gjithash, specifikimi i sekuencës së kërkuar të karaktereve. Nëse e kuptoni qartë këtë, atëherë nuk do të ketë gabime në shabllon. Në çdo rast, do të jetë shumë më pak.

  • a është një element specifik i shabllonit - një simbol.
  • a-z është një element shabllon, gjithashtu një karakter, por vetëm me vlerën nga a në z - i gjithë latinishtja me shkronja të vogla.
  • 0-9 është një numër, çdo numër, por 1-3 është vetëm 1, 2 ose 3.

Rasti në model është i rëndësishëm. Karakteret e para dhe të fundit të modelit janë domethënëse. Ju mund të specifikoni se ku fillon dhe mbaron shablloni.

Modeli i funksionit

PHP preg match të gjitha përdor sintaksën standarde të shprehjes së rregullt. tregoni një nga simbolet e treguara në to:

  • vetëm karakteret a, b, c.
  • [^ABC] gjithçka përveç personazheve A, B, C.
  • \w dhe \W - karakter tekst ose jo tekst.
  • \s dhe \S - karakter i bardhë ose jo i bardhë.
  • \d dhe \D - shifror ose joshifror.

Karakteret e përsëritura tregohen me kllapa kaçurrelë - (n,m) dhe i referohen karakterit të mëparshëm.

  • n tregon përsëritjen e "jo më pak se";
  • m - përsëritja e "jo më".

Sintaksa ofron shumë mundësi për krijimin e shablloneve, por është më mirë të filloni me bazat, domethënë me ato të thjeshta të shkruara në dorën tuaj, në të cilat mungojnë elementë dhe kombinime komplekse.

E thënë thjesht, duke renditur karakteret reale që nevojiten, duke treguar sasitë e tyre të kërkuara dhe duke marrë parasysh që karakteri "^" korrespondon me fillimin dhe "$" në fund të rreshtit, mund të krijoni shabllone të thjeshtë. Duke analizuar shprehjet e rregullta reale dhe të korrigjuara mirë nga ekspertë të kualifikuar, mund të fitoni njohuri solide për të krijuar aplikacione komplekse të preg match all. Arsenali i PHP nuk kufizohet vetëm në këto dy funksione, por ato janë më të përdorurat.

Praktikë e thjeshtë

Modeli i numrit të plotë:

  • "/*/"

Gjithashtu një model i plotë, por mund të ketë një shenjë përpara ("+", "-") dhe mund të ketë hapësira shtesë në pjesën e përparme/mbrapa:

  • /^[\s|\+|\-](0,1)*/

Po kështu:

  • /^[\s|\+|\-](0,1)*(\.)*/ - një numër me një pikë.
  • /+@+\.(2,3)/ - opsion për njohjen e e-mail.

Përdorimi i shablloneve tuaja për preg përputhet me të gjitha, shembujt e tyre në internet, analizimi i kodit të faqeve të faqeve të internetit dhe burimeve të tjera ju lejon të krijoni bibliotekën tuaj të shablloneve.

Ka shumë mundësi për të gjetur informacion. Në veçanti, dy ndërtimet e fundit të dhëna më sipër mund të modelohen ndryshe. Në shumë raste, përparësi do t'i jepet shabllonit që siguron përputhjen e dëshiruar më shpejt dhe më saktë. Përdorimi i preg match all në PHP, si dhe funksione të ngjashme në gjuhë të tjera, kërkon praktikë, vëmendje dhe kontroll paraprak të korrektësisë së shablloneve.

Ky artikull ofron një përzgjedhje të shembujve të php regexp. Një koleksion shumë i bukur dhe i dobishëm shembujsh të shprehjes së rregullt. Të gjithë shembujt e shprehjeve të rregullta janë të pranueshme për PHP. Shijojeni për shëndetin tuaj!

Shembull i verifikimit të emrit të domenit

Ky fragment php kontrollon nëse vargu është një emër i vlefshëm domeni.

?:.*)+):?(d+)?/?/i", $url)) ( jehonë "URL juaj është në rregull."; ) else (echo "url i gabuar."; )

Shembull i nxjerrjes në pah të një fjale në tekst

Një shprehje e rregullt shumë e dobishme për kërkimin dhe nxjerrjen në pah të fjalës së dëshiruar në tekst. Kodi është veçanërisht i dobishëm kur krijoni rezultatet e kërkimit.

$text = "Fjali shembull nga KomunitasWeb, regex është bërë popullor në programimin në ueb. Tani mësojmë regex. Sipas wikipedia, shprehjet e rregullta (shkurtuar si regex ose regexp, me forma shumësi regex, regexps ose regexen) shkruhen në një formë formale. gjuhë që mund të interpretohet nga një procesor i shprehjes së rregullt"; $text = preg_replace("/b(regex)b/i", " 1", $text); echo $text;

Një shembull i zbatimit të nxjerrjes në pah të rezultateve të kërkimitWordPress

Hapni skedarin search.php dhe gjeni funksionin the_title(). Zëvendësojeni atë me rreshtin e mëposhtëm:

Echo $title;

Tani, përpara rreshtit të zëvendësuar, futni këtë kod:

\0", $title); ?>

Ruani skedarin tuaj search.php dhe hapni style.css. Shtoni vijën e mëposhtme në të:

Strong.search-fragment ( sfondi: i verdhë; )

Një shembull i marrjes së imazheve ngaMetoda HTML regexp

Kjo pjesë e kodit PHP duke përdorur shprehje të rregullta kërkon për të gjitha imazhet dhe url-në e tyre.

$imazhe = grup(); preg_match_all("/(img|src)=("|")[^"">]+/i", $data, $media); unset ($data); $data=preg_replace("/(img|src)("|"|="|=")(.*)/i","$3",$media); foreach($data si $url) ( $info = pathinfo($url); if (isset($info["extension"])) ( if (($info["extension"] == "jpg") || ($info["extension"] == "jpeg") || ($info["extension"] == "gif") || ($info["extension"] == "png")) array_push($ imazhe, $url); ))

Heqja e fjalëve dublikatë (pa ndjeshmëri)

A ka shpesh fjalë që përsëriten? Atëherë ky shembull i shprehjes së rregullt do të jetë i dobishëm për ju.

$text = preg_replace("/s(w+s)1/i", "$1", $tekst);

Heqja e pikave të dyfishta

E njëjta gjë, vetëm me pika të përsëritura.

$text = preg_replace("/.+/i", ".", $text);

Përputhja e etiketave XML/HTML

Ky funksion i thjeshtë merr dy argumente: një etiketë (që dëshironi të përputhet), kodin xml ose html.

Funksioni get_tag($tag, $xml) ($tag = preg_quote($tag); preg_match_all("(<".$tag."[^>]*>(.*?).")", $xml, $matches, PREG_PATTERN_ORDER); kthej $matches; )

Kërkoni për etiketat XHTML/XML me vlera specifike të atributeve

Ky shembull është i ngjashëm me funksionin e mëparshëm, vetëm ju mund ta zgjeroni ndjeshëm kërkimin, për shembull gjeni

.

Funksioni get_tag($attr, $value, $xml, $tag=null) ( if(is_null($tag)) $tag = "\w+"; tjetër $tag = preg_quote($tag); $attr = preg_quote($ attr); $value = preg_quote ($value); $tag_regex = "/<(".$tag.")[^>]*$attr\s*=\s*". "(["\"])$value\\2[^>]*>(.*?)<\/\\1>/" preg_match_all ($tag_regex, $xml, $matches, PREG_PATTERN_ORDER); ktheje $matches; )

Gjetja e vlerave heksadecimal të ngjyrave

Një shembull i shkëlqyer i një shprehjeje të rregullt që përputhet me vlerat heksadecimal të ngjyrave në vargjet e dhëna. Për ç'farë është kjo? Ndoshta ju dëshironi të shkruani një shërbim të kompresimit të kodit CSS, ose diçka të ngjashme.

$string = "#555555"; if (preg_match("/^#(?:(?:(3))(1,2))$/i", $string)) (echo "shembulli 6 i suksesshëm."; )

Shembull kërkimititull në një faqe të caktuar

Ky shembull interesant i kodit PHP me regexp gjen dhe kthen tekstin midis etiketave Dhe.

Feof($fp))( $page .= fgets($fp, 4096); ) $titre = eregi(" (.*)",$page,$regs); echo $regs; fclose($fp);

Analiza e regjistrave Apache

Shumica e faqeve funksionojnë në serverë të mirënjohur Apache. Nëse faqja juaj funksionon gjithashtu në të, atëherë mund të analizoni regjistrin e serverit duke përdorur php regexp.

//Regjistrimet: Serveri i uebit Apache //Hitjet e suksesshme vetëm në skedarët HTML. E dobishme për numërimin e numrit të shikimeve të faqeve. "^((?#IP-ja e klientit ose emri i domenit)S+)s+((?#autentifikimi bazë)S+s+S+)s+[((?#data dhe ora)[^]]+)]s+"(?: GET|POST|HEAD) ((?#skedar)/[^ ?]+?.html?)??((?#parametrat)[^ ?]+)? HTTP/+"s+(?#kodi i statusit)200s+((?#bajtë të transferuar)[-0-9]+)s+"((?#referrer)[^"]*)"s+"((?#agjenti i përdoruesit )[^"]*)"$" //Regjistrat: Ueb serveri Apache //404 gabime vetëm "^((?# IP-ja e klientit ose emri i domenit)S+)s+((?#autentifikimi bazë)S+s+S+) s+[((?#data dhe ora)[^]]+)]s+"(?:GET|POST|HEAD) ((?#file)[^ ?"]+)??((?#parametrat)[ ^ ?"]+)? HTTP/+"s+(?#kodi i statusit)404s+((?#bajtë të transferuar)[-0-9]+)s+"((?#referrer)[^"]*)"s+"((?#agjenti i përdoruesit )[^"]*)"$"

Shembull i kontrollit të kompleksitetit të fjalëkalimit

Një shembull i shkëlqyer i një shprehjeje të rregullt që kontrollon nivelin e kompleksitetit të një fjalëkalimi. Fjalëkalimi duhet të jetë 6 karaktere i gjatë dhe të përmbajë të paktën një karakter të madh, një karakter të vogël dhe një numër.

"A(?=[-_a-zA-Z0-9]*?)(?=[-_a-zA-Z0-9]*?)(?=[-_a-zA-Z0-9]*?) [-_a-zA-Z0-9](6,)z"

Zëvendësimi i emoticonave të tekstit me emoticon grafikë

Ky kod shembull do të ndryshojë emocionin e tekstit në atë grafik. Një fragment PHP interesant dhe i dobishëm.

$texte="Një tekst me një buzëqeshje:-)"; echo str_replace(":-)"," ",$texte);

Shembull i një shprehjeje të rregullt për të marrë imazhekodi html

Vlen të thuhet se ky kod php përdoret në wordpress për të kërkuar dhe përpunuar imazhe.

post_përmbajtja; $szSearchPattern = "~ ]* />~"; // Ekzekutoni preg_match_all për të kapur të gjitha imazhet dhe për të ruajtur rezultatet në $aPics preg_match_all($szSearchPattern, $szPostContent, $aPics); // Kontrolloni për të parë nëse kemi të paktën 1 imazh $iNumberOfPics = count($aPics); nëse ($iNumberOfPics > 0) ( // Këtu mund të përpunoni imazhet tuaja // Në këtë shembull ato thjesht do të shfaqen në monitor për ($i=0; $i< $iNumberOfPics ; $i++) { echo $aPics[$i]; }; }; endwhile; endif; ?>

Shpresoj se e keni gjetur të dobishëm këtë koleksion shembujsh php regexp. Nëse ka shtesa interesante ose shembuj të shprehjeve të rregullta (php), shkruani në komente.

Përshkrimi i funksionit:

Funksioni preg_replace kërkon përputhjet e një shprehjeje të rregullt (model) me të dhënat në një varg (subjekti) dhe i zëvendëson ato me të dhënat e gjetura në zëvendësim.

Argumenti

Përshkrim

model

Argumenti i kërkuar. Shprehje e rregullt (modeli i kërkimit)

varg, varg

zëvendësim

Argumenti i kërkuar. Një varg ose grup që përmban të dhëna të përdorura për të zëvendësuar të dhënat në subjekt

Ju gjithashtu mund të përdorni një ndërtim të formës \$(1) për lidhjet, që është ekuivalente me \$1; ky ndërtim përdoret nëse lidhja pasohet menjëherë nga një numër (\$(1)1).

varg, varg
subjekt Argumenti i kërkuar. Një varg ose grup që përmban të dhënat që do të zëvendësohen. varg, varg
limit

Argument opsional. Numri maksimal i zëvendësimeve. Parazgjedhja është -1 (i pakufizuar)

ndër
numëroj

Argument opsional. Një variabël që përmban numrin e zëvendësimeve të bëra.

ndër

Funksioni preg_replace() mund të përdoret me modifikuesin /e. Kur ky modifikues është i pranishëm, parametri zëvendësues interpretohet si kod PHP dhe më pas përdoret për zëvendësim.

Shprehje të rregullta

Më vete, duhet të ndalemi te shprehjet e rregullta, pa i kuptuar të cilat është mjaft e vështirë (nëse jo e pamundur) të kuptohet puna e funksionit. preg_replace().

Një përshkrim mjaft i mirë i shprehjeve të rregullta është dhënë në wikipedia.org, pikat kryesore të përdorimit të shprehjeve të rregullta janë përshkruar gjithashtu

Shembuj:

Shembulli 1:

Në këtë shembull, ne i zëvendësojmë të gjithë numrat e vendosur në kllapa me yll.

Shembulli 2:

Në këtë shembull, ne zëvendësojmë vargun që korrespondon me të gjithë modelin me të dhënat që korrespondojnë me nënmodelin e parë në referencë \$1. Me fjalë të tjera, "kanë 3 mollë" që korrespondojnë me "/(\w+) (\d+) (\w+)/" do të zëvendësohet me "kanë" që korrespondon me (\w+).

Shembulli 3:

Ky shembull tregon se çfarë ndodh nëse përdorni vargje si model dhe zëvendësim.

Shembulli 4:

Ky shembull tregon se çfarë ndodh nëse përdorni vargje si model, zëvendësim dhe subjekt.

Shembulli 5:

Ky shembull tregon përdorimin e modifikuesit /e, pra kur zëvendësimi interpretohet si kod php. Më poshtë është shndërrimi i karaktereve nga shkronjat e vogla në të mëdha.

Shembulli 6:

Ky shembull tregon përdorimin e argumentit count. Këtu rezultati do të jetë i barabartë me 2, kështu që ka pasur dy zëvendësime.

të përziera preg_ndeshja(modeli i vargut, subjekti i vargut [, grupi &përputhet [, flamujt int [, zhvendosja int]]])

Kërkon subjektin e dhënë të tekstit për përputhje me modelin e modelit

Nëse specifikohet parametri shtesë i përputhjeve, ai do të plotësohet me rezultatet e kërkimit. Elementi $matches do të përmbajë pjesën e vargut që përputhet me të gjithë modelin, $matches do të përmbajë pjesën e vargut që përputhet me nënmodelin e parë, e kështu me radhë.

flamujt mund të marrin vlerat e mëposhtme:

PREG_OFFSET_CAPTURE

Nëse specifikohet ky flamur, për çdo nënvarg të gjetur do të tregohet pozicioni i tij në vargun burimor. Është e rëndësishme të mbani mend se ky flamur ndryshon formatin e të dhënave të kthyera: çdo dukuri kthehet si një grup, elementi zero i të cilit përmban nënvargun e gjetur dhe elementi i parë përmban kompensimin. Ky flamur është i disponueshëm në PHP 4.3.0 dhe më të lartë.

Parametri shtesë i flamujve është i disponueshëm që nga PHP 4.3.0.

Kërkimi kryhet nga e majta në të djathtë, nga fillimi i rreshtit. Parametri opsional i kompensimit mund të përdoret për të specifikuar një pozicion alternativ fillestar për kërkimin. Parametri shtesë i kompensimit është i disponueshëm që nga PHP 4.3.3.

Koment: Përdorimi i parametrit offset nuk është ekuivalent me zëvendësimin e vargut të përputhur me substr($subject, $offset) kur thirret funksioni preg_match_all(), meqenëse modeli mund të përmbajë kushte të tilla si ^ , $ ose (? . Krahaso:

Ndërsa ky shembull

Funksioni preg_match () kthen numrin e ndeshjeve të gjetura. Mund të jetë 0 (nuk u gjet asnjë përputhje) dhe 1 sepse preg_match () ndalon së punuari pas ndeshjes së parë të gjetur. Nëse keni nevojë të gjeni ose numëroni të gjitha ndeshjet, duhet të përdorni funksionin preg_match_all(). Funksioni preg_match () kthehet I RREMË në rast se ndodh ndonjë gabim gjatë ekzekutimit.

E dhënë: Mos e përdorni funksionin preg_match (), nëse keni nevojë të kontrolloni praninë e një nënvargu në një varg të caktuar. Përdorni për këtë strpos () ose strstr(), pasi ata do ta kryejnë këtë detyrë shumë më shpejt.


Shembulli 2. Kërkoni në tekst fjalën "web".

/*
Sekuenca speciale \b në model do të thotë një kufi fjalësh,
prandaj, vetëm një dukuri e izoluar e fjalës "web" do të përputhet
maskë, në krahasim me "rrjetin e trashë" ose "rrjetën e kobures".
*/
nëse (preg_match("/\bweb\b/i" , "PHP është gjuha e zgjedhur e skriptimit në internet.")) {
jehonë "Hyrja u gjet.";
) tjeter (
jehonë "Nuk u gjet asnjë hyrje.";
)preg_match ("/\bweb\b/i" , "PHP është gjuha e zgjedhur e skriptimit të faqes në internet.")) {
jehonë "Hyrja u gjet.";
) tjeter (
jehonë "Nuk u gjet asnjë hyrje.";
}
?>

Prej kohësh kam dashur të kuptoj shprehjet e rregullta. Edhe pse "kuptojeni" është një fjalë e fortë. Për të zotëruar artin e madh për t'u bërë mjeshtër i shprehjeve të rregullta, duhet të punoni vazhdimisht me ta. Nuk mjafton të mësosh sintaksën, karakteret speciale dhe modifikuesit - duhet të jesh në gjendje t'i përdorësh ato. Dhe aftësia për të përdorur vjen me përvojë.

Në këtë postim do të postoj shembuj të përdorimit të shprehjeve të rregullta, punën e të cilave unë vetë e kam kuptuar.

Tabela e personazheve të veçanta

Karakter i veçantë Përshkrim
\ Simboli i arratisjes. Shembull: '/seo\/smo/'- përputhet me linjën që përmban seo/smo.
^ Fillimi i simbolit të të dhënave. Shembull: '/^ SEO/'— përputhet me një rresht që fillon me fjalën seo.
$ Simboli i fundit të të dhënave. Shembull: '/blog$/'— përputhet me një rresht që përfundon me fjalën blog.
. Çdo karakter përveç furnizimit të linjës. Shembull: '/seo.ult/'- përputhet me vargun seopult, seo9ult, seo@ult, etj.
Brenda këtyre kllapave janë renditur karakteret, secili prej të cilëve mund të shfaqet në një vend të caktuar, por vetëm një. Shembull: '/seult/'— do të përputhen vetëm linjat që përmbajnë seopult, seokult ose seomult.
| Ose. Shembull më poshtë.
() Nënmaskë.
? Një ose zero dukuri të karakterit ose nënmodelit të mëparshëm.
* Çdo numër dukurish të karakterit ose nënmodelit të mëparshëm. Duke përfshirë zero.
+ Një ose më shumë dukuri.
Shembull: '/se+(op|om)?.*t/'- shkronja s, pastaj një ose më shumë shkronja e, pas së cilës kombinimi op ose om mund të shfaqet një herë, ose ndoshta jo një herë, pastaj çdo numër i ndonjë simboli dhe shkronja t.
(a,b) Numri i dukurive të karakterit ose nënmodelit paraardhës nga a në b. Shembull: (0,) - njësoj si *, (0,1) - njësoj si ?, (3,5) - 3, 4 ose 5 përsëritje.

Shembuj të thjeshtë të skripteve PHP duke përdorur shprehje të rregullta:

1) Shprehjet e mëparshme dhe të mëvonshme.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 // gjeni një fjalë në të cilën ing vjen pas Box. Nëse gjendet fjala, funksioni do të kthehet true, nëse jo, false.$pattern1 = "/Box(?=ing)/" ; preg_match ($pattern1, "Box Day"); // false preg_match ($pattern1, "Boxing Day" ); // e vërtetë // gjeni një fjalë që nuk ka ing pas kutisë. Nëse gjendet fjala, funksioni do të kthehet true, nëse jo, false.$pattern2 = "/box(?!ing)/" ; preg_match ($pattern2, "Kutia për iPhone dhe iPad"); // preg_match i vërtetë ($pattern2, "Çfarë është dita e boksit?") ; // false preg_match ($pattern2, "css-moz-box-shadow" ); // e vërtetë // gjeni një fjalë ku ing nuk paraprihet nga kutia. Nëse gjendet fjala, funksioni do të kthehet true, nëse jo, false.$pattern3 = "/(?

[^<]+?~","seo blog",$text); echo $text; ?>

3) Merrni dhe shfaqni vlerën Alexa Rank të një faqeje të caktuar.

1 2 3 4 5 6 7 8 9 "#
(.*?)
#si", file_get_contents ( "http://www.alexa.com/siteinfo/($url)") , $a ) ; kthye trim (str_replace ("," , "" , strip_tags ($a [ 1 ] ) ) ; ) $alexa = alexa($url) ; jehonë $alexa ; ?>

(.*?)

#si", file_get_contents("http://www.alexa.com/siteinfo/($url)"), $a); kthimi trim(str_replace(",","",strip_tags($a))); ) $alexa = alexa ($url); echo $alexa; ?>

4) Merrni dhe shfaqni titullin e faqes.

1 2 3 4 5 (.*)<\/title>/s" , $str , $m ) ; echo $m [ 1 ] ; ?>

(.*)<\/title>/s", $str, $m); jehonë $m; ?>

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 \n \r \t ]/", "" , $content ); // zëvendësoni karakteret e linjës së re dhe të skedës me hapësira$content = preg_replace ("/(2,)/" , " " , $content ); // zëvendësoni më shumë se 2 hapësira me një preg_match_all("/ ]*href=(?:"| \" )(.*)(?:"|\" )[^<>]*>(.*)<\/a>/iU", $përmbajtje , $links ); // mbledh lidhjet nëse (madhësia e ($links [ 1 ] ) > 0 ) // nëse gjenden lidhje($out = grup () ; // grup lidhjesh të jashtme foreach ($links [ 1 ] si $v ) ( if (preg_match ("/http:\/\/(www\.)(0,1)" . $domain. "/i" , $v ) ) // Zhduk lidhjet e brendshme(vazhdim ;) nëse (preg_match ( "/(http:|https:)?\/\/(www\.)(0,1)(.*)/i", $v )) // referencë e jashtme( $out = $v ; ) ) ktheje $out ; ) grupi i kthimit () ; ) $domain = "faqe" ; $content = file_get_contents ("http://site/"); $getoutlinks = getoutlinks($content, $domain) ; për ($i = 0; $i<= count ($getoutlinks ) ; $i ++ ) { echo $getoutlinks [ $i ] . "
" ; } ?>

]*href=(?:"|\")(.*)(?:"|\")[^<>]*>(.*)<\/a>/iU", $content, $links); // mbledh lidhjet nëse (sizeof($links) > 0) // nëse gjenden lidhje ( $out = array(); // grup lidhjesh të jashtme për të ($links si $v ) (nëse (preg_match("/http:\/\/(www\.)(0,1)".$domain."/i", $v)) // zhduk lidhjet e brendshme ( vazhdo; ) if (preg_match ("/(http:|https:)?\/\/(www\.)(0,1)(..com/"); $getoutlinks = getoutlinks($content, $domain); për ( $i = 0;$i<= count($getoutlinks); $i++) { echo $getoutlinks[$i]."
"; } ?>

Ku:
preg_zëvendësoj— Kryen kërkimin dhe zëvendësimin duke përdorur një shprehje të rregullt.
preg_ndeshja— kryen një kontroll ndaj një shprehjeje të rregullt.
preg_ndesh_të gjitha— gjen të gjitha ndeshjet, ndërsa preg_match gjen vetëm të parën.
file_get_contents— merrni përmbajtjen e skedarit si një rresht.
shkurtoj— heq hapësirat në fillim dhe në fund të një rreshti.
str_zëvendësoj— zëvendëson vargun e kërkimit me një varg zëvendësues.
strip_tags— heq etiketat html dhe php nga një varg.
madhësia e— merr numrin e elementeve në ndryshore.
numëroj— numëron numrin e elementeve të grupit ose numrin e vetive të objektit.