⊗ppPmRgCB 228 of 447 menu

Aaltosulkeet PHP:n säännöllisissä lausekkeissa

Operaattorit +, *, ? ovat hyviä, mutta niillä ei voida määrittää tarkkaa toistomäärää. Tässä tapauksessa operaattori {} tulee apuusi.

Se toimii seuraavasti: {5} - viisi toistoa, {2,5} - toistuu kahdesta viiteen (mukaan lukien molemmat), {2,} - toistuu kaksi kertaa tai useammin.

Esimerkki

Tässä esimerkissä hakumalli näyttää tältä: kirjain 'x', kirjain 'a' yksi tai kaksi kertaa, kirjain 'x':

<?php $str = 'xx xax xaax xaaax'; $res = preg_replace('#xa{1,2}x#', '!', $str); ?>

Tuloksena muuttujaan kirjoitetaan seuraava:

'xx ! ! xaaax'

Esimerkki

Tässä esimerkissä hakumalli näyttää tältä: kirjain 'x', kirjain 'a' kaksi kertaa tai useammin, kirjain 'x':

<?php $str = 'xx xax xaax xaaax'; $res = preg_replace('#xa{2,}x#', '!', $str); ?>

Tuloksena muuttujaan kirjoitetaan seuraava:

'xx xax ! !'

Esimerkki

Tässä esimerkissä hakumalli näyttää tältä: kirjain 'x', kirjain 'a' kolme kertaa, kirjain 'x':

<?php $str = 'xx xax xaax xaaax'; $res = preg_replace('#xa{3}x#', '!', $str); ?>

Tuloksena muuttujaan kirjoitetaan seuraava:

'xx xax xaax !'

Esimerkki

Tässä esimerkissä hakumalli näyttää tältä: kirjain 'a' kymmenen kertaa:

<?php $str = 'aaa aaaaaaaaaa aaa'; $res = preg_replace('#a{10}#', '!', $str); ?>

Tuloksena muuttujaan kirjoitetaan seuraava:

'aaa ! aaa'

Esimerkki

Tässä esimerkissä koodin kirjoittaja halusi mallin: kirjain 'x', kirjain 'a' kolme kertaa tai vähemmän, kirjain 'x', valitettavasti tämä - {,3} - ei toimi. Se on määritettävä eksplisiittisesti:

<?php $str = 'xx xax xaax xaaax'; $res = preg_replace('#xa{1,3}x#', '!', $str); ?>

Tuloksena muuttujaan kirjoitetaan seuraava:

'xx ! ! !'

Esimerkki

Nolla on myös sallittu:

<?php $str = 'xx xax xaax xaaax'; $res = preg_replace('#xa{0,3}x#', '!', $str); ?>

Tuloksena muuttujaan kirjoitetaan seuraava:

'! ! ! !'

Käytännön tehtävät

Annettu merkkijono:

<?php $str = 'aa aba abba abbba abbbba abbbbba'; ?>

Kirjoita säännöllinen lauseke, joka löytää merkkijonot 'abba', 'abbba', 'abbbba' ja vain ne.

Annettu merkkijono:

<?php $str = 'aa aba abba abbba abbbba abbbbba'; ?>

Kirjoita säännöllinen lauseke, joka löytää merkkijonot muotoa 'aba', joissa 'b' esiintyy alle kolme kertaa (mukaan lukien).

Annettu merkkijono:

<?php $str = 'aa aba abba abbba abbbba abbbbba'; ?>

Kirjoita säännöllinen lauseke, joka löytää merkkijonot muotoa 'aba', joissa 'b' esiintyy yli neljä kertaa (mukaan lukien).

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää