⊗ppSpOtRg 79 of 83 menu

Säännöllisten lausekkeiden optimointi PHP:ssä

Säännölliset lausekkeet ovat erittäin raskas ja suhteellisen hitaasti toimiva asia. Kun on olemassa vaihtoehtoinen ratkaisu, on toivottavaa käyttää juuri sitä.

Katsotaan esimerkkiä. Oletetaan, että meidän on tarkistettava, alkaako jokin merkkijono huutomerkillä. Eräs ohjelmoija ratkaisi tämän tehtävän säännöllisellä lausekkeella:

<?php if (preg_match('#^!#', $str)) { echo 'kyllä'; } else { echo 'ei'; } ?>

Kuitenkin tällaisella tehtävällä on paljon nopeammin toimiva ratkaisu:

<?php if ($str[0] == '!') { echo 'kyllä'; } else { echo 'ei'; } ?>

Säännölliset lausekkeet ovat erittäin raskas ja suhteellisen hitaasti toimiva asia. Aina, kun on olemassa vaihtoehtoinen ratkaisu, on toivottavaa käyttää juuri sitä.

Seuraavassa koodissa eräs ohjelmoija tarkistaa, onko merkkijonossa osajonoa '333'. Optimoi tämän ohjelmoijan ratkaisu.

Tässä on koodi:

<?php $str = '1233345'; if (preg_match('#333#', $str)) { echo 'on'; } else { echo 'ei'; } ?>

Seuraavassa koodissa eräs ohjelmoija tarkistaa, päättyykö merkkijono päätteeseen .html. Optimoi tämän ohjelmoijan ratkaisu.

Tässä on koodi:

<?php $str = 'index.html'; if (preg_match('#\.html$#', $str)) { echo 'kyllä'; } else { echo 'ei'; } ?>

Kirjoita koodi, joka tarkistaa, päättyykö merkkijono päätteeseen .png tai .jpg.

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ää