⊗ppPmRgSHy 238 of 447 menu

Crtica unutar skupova u regex izrazima PHP

Crtica - takođe specijalni karakter unutar [] (a izvana - nije). Ako vam treba sama crtica kao simbol - onda je stavite tamo, gde neće biti shvaćena kao razdelnik grupe.

Zašto je ovo važno: možete napraviti grupu simbola, sami to ne primećujući. Na primer, ovako - [:-@] - mislite da odabirate dvotačku, crticu i znak @, a u stvari se dobija grupa simbola između : i @. U ovu grupu spadaju sledeći simboli: :, ;, ?, <, =, >.

Odakle su se pojavili? Iz tabele ASCII - dvotačka ima manji broj, nego znak @ - i dobija se grupa. Odnosno sve grupe dobijaju se prema ASCII tabeli (po želji ovime se može koristiti).

Kako se boriti sa ovim: stavite simbol crtice tamo, gde sigurno neće biti shvaćen kao simbol grupe, na primer, na početku ili na kraju (odnosno posle [ ili pre ]).

Možete takođe da ekranizujete crticu - tada će označavati samu sebe nezavisno od pozicije. Na primer, umesto [:-@] napisati [:\-@] - i grupe više neće biti, a biće tri simbola - dvotačka, crtica i znak @.

Primer

U sledećem primeru šablon pretrage je sledeći: cifra 1, zatim slovo od 'a' do 'z', zatim cifra 2:

<?php $str = '1a2 1-2 1c2 1z2'; $res = preg_replace('#1[a-z]2#', '!', $str); ?>

Kao rezultat u promenljivu će se upisati sledeće:

'! 1-2 ! !'

Primer

Hajde sada da ekranizujemo crticu. Kao rezultat šablon pretrage je sledeći: cifra 1, zatim slovo 'a', ili crtica, ili slovo 'z', zatim cifra 2:

<?php $str = '1a2 1-2 1c2 1z2'; $res = preg_replace('#1[a\-z]2#', '!', $str); ?>

Kao rezultat u promenljivu će se upisati sledeće:

'! ! 1c2 !'

Primer

Možete jednostavno premeštati crticu, ne ekranizujući je:

<?php $str = '1a2 1-2 1c2 1z2'; $res = preg_replace('#1[az-]2#', '!', $str); ?>

Kao rezultat u promenljivu će se upisati sledeće:

'! ! 1c2 !'

Primer

U sledećem primeru šablon pretrage je sledeći: prvi simbol - to su mala slova ili crtica '-', pa dva slova 'x':

<?php $str = 'axx Axx -xx @xx'; $res = preg_replace('#[a-z-]xx#', '!', $str); ?>

Kao rezultat u promenljivu će se upisati sledeće:

'! Axx ! @xx'

Primer

U sledećem primeru šablon pretrage je sledeći: prvi simbol - to su mala, velika slova ili crtica '-', pa dva slova 'x':

<?php $str = 'axx Axx -xx @xx'; $res = preg_replace('#[a-zA-Z-]xx#', '!', $str); ?>

Kao rezultat u promenljivu će se upisati sledeće:

'! ! ! @xx'

Primer

Možete rasporediti crticu između dve grupe - tamo ona sigurno neće napraviti još jednu grupu:

<?php $str = 'axx 9xx -xx @xx'; $res = preg_replace('#[a-z-0-9]xx#', '!', $str); ?>

Kao rezultat u promenljivu će se upisati sledeće:

'! ! ! @xx'

Praktični zadaci

Data je sledeći string:

<?php $str = 'xaz xBz xcz x-z x@z'; ?>

Pronađite sve stringove prema sledećem šablonu: slovo 'x', veliko ili malo slovo ili crtica, slovo 'z'.

Data je sledeći string:

<?php $str = 'xaz x$z x-z xcz x+z x%z x*z'; ?>

Pronađite sve stringove prema sledećem šablonu: slovo 'x', zatim ili dolar, ili crtica ili plus, pa slovo 'z'.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij