Säännöllisten lausekkeiden käyttö

PHP:
Säännöllisten lausekkeiden käyttö

Miten:

PHP tukee säännöllisiä lausekkeita PCRE:n (Perl Compatible Regular Expressions) kirjaston kautta, tarjoten rikkaan joukon funktioita. Näin niitä käytetään:

Mallin vastaavuuden tarkistaminen:

Jos haluat tarkistaa, esiintyykö malli merkkijonossa, käytä preg_match()-funktiota. Tämä funktio palauttaa 1, jos kuvio löytyi merkkijonosta, ja 0, jos ei.

if (preg_match("/\bweb\b/i", "PHP on web-skriptauskieli")) {
    echo "Vastaavuus löytyi.";
} else {
    echo "Vastaavuutta ei löytynyt.";
}
// Tuloste: Vastaavuus löytyi.

Kaikkien vastaavuuksien löytäminen:

preg_match_all()-funktiota käytetään, kun tarvitset löytää kaikki kuvion esiintymät merkkijonossa.

$text = "kissat ja koirat";
$pattern = "/\b([a-z]+)\b/i";
preg_match_all($pattern, $text, $matches);
print_r($matches[0]);
// Tuloste: Array ( [0] => kissat [1] => ja [2] => koirat )

Tekstin korvaaminen:

Tekstin korvaamiseen, joka vastaa säännöllistä lauseketta, käytetään preg_replace()-funktiota. Se on uskomattoman tehokas datan muotoilussa ja siivoamisessa.

$originalText = "Huhtikuu 15, 2003";
$pattern = "/(\w+) (\d+), (\d+)/i";
$replacement = '${1}1,$3';
echo preg_replace($pattern, $replacement, $originalText);
// Tuloste: Huhtikuu1,2003

Merkkijonojen jakaminen:

Voit jakaa merkkijonon taulukoksi käyttäen preg_split()-funktiota, määrittelemällä mallin erottimeksi.

$text = "PHP on, erittäin suosittu, skriptauskieli";
$parts = preg_split("/,\s*/", $text);
print_r($parts);
// Tuloste: Array ( [0] => PHP on [1] => erittäin suosittu [2] => skriptauskieli )

Lisäksi, monimutkaisia regex-malleja ja tehtäviä varten, kehykset ja kirjastot, kuten Symfonyn Finder-komponentti tai Laravelin apufunktioiden kokoelma, saattavat tarjota kätevämmän abstraktiotason. Kuitenkin PHP:n sisäänrakennettujen PCRE-funktioiden ymmärtäminen ja käyttö on elintärkeää tehokkaaseen tekstinkäsittelyyn ja validointiin suoraan PHP-skripteissä.