Eccovi anzitutto la corrispondenza di tutte le vecchie funzioni PHP deprecate (prima colonna) e le sostitutive (seconda):
POSIX – PCRE
ereg_replace() preg_replace()
ereg() preg_match()
eregi_replace() preg_replace()
eregi() preg_match()
split() preg_split()
spliti() preg_split()
sql_regcase() nessuna corrisp.
Un esempio funzionante di codice che lavora con PCRE in PHP è il seguente.
<ul>
<?php
$pattern = ‘/ring/’;
$stringa = ‘stringa’;
$pattern1 = ‘/Ring/’;
$stringa1 = ‘stringa’;
$stringa2 = ‘stRinga’;
echo “<li>preg_match case sensitive = “.preg_match($pattern, $stringa).”</li>”; //1, true
echo “<li>preg_match case insentive = “.preg_match($pattern1, $stringa1).”</li>”; //0, false
echo “<li>preg_match case insentive = “.preg_match($pattern1, $stringa2).”</li>”; //1, true
?>
</ul>
Inoltre:
- /<\/\w+>/ : codifica pattern tipo </[a-z]*> (ad es. </>, </abc>, </ashgdjhsag/> ecc.)
- |(\d{3})-\d+|Sm : codifica espressioni di un numero di almeno tre cifre oppure un carattere diverso dallo spazio (S) ed una ‘m’. Ad esempio 1234 oppure #m
- /^(?i)php[34]/ : codifica pattern tipo ^(?i)php3 oppure ^(?i)php4 dove ^(?i) indica carattere diverso da lettera_qualsiasi (?) seguita da i
- {^\s+(\s+)?$} : sequenza di caratteri diversi dallo spazio seguita da almeno una sequenza di caratteri spazio
| POSIX | Perl | ASCII | Description |
|---|---|---|---|
[:alnum:] |
[A-Za-z0-9] |
caratteri alfanumerici | |
[:word:] |
\w |
[A-Za-z0-9_] |
caratteri alfanumerici incluso l’underscore “_” (=word) |
\W |
[^\w] |
carattere non-word | |
[:alpha:] |
[A-Za-z] |
carattere alfabetico | |
[:blank:] |
[ \t] |
spazio e tab | |
[:cntrl:] |
[\x00-\x1F\x7F] |
caratteri di controllo | |
[:digit:] |
\d |
[0-9] |
cifre |
\D |
[^\d] |
non-cifre | |
[:graph:] |
[\x21-\x7E] |
caratteri visibili | |
[:lower:] |
[a-z] |
caratteri minuscoli | |
[:print:] |
[\x20-\x7E] |
caratteri visibili e spazi | |
[:punct:] |
[-!"#$%&'()*+,./:;<=>?@[\\\]^_`{|}~] |
caratteri di punteggiatura | |
[:space:] |
\s |
[ \t\r\n\v\f] |
caratteri di spaziatura del testo |
\S |
[^\s] |
caratteri diversi da quelli di spaziatura del testo | |
[:upper:] |
[A-Z] |
lettere maiuscole | |
[:xdigit:] |
[A-Fa-f0-9] |
cifre esadecimali |
–


