cvs: phpdoc /it/functions pcre.xml

From: Date: Thu, 21 Mar 2002 10:48:26 +0000
Subject: cvs: phpdoc /it/functions pcre.xml
Groups: php.doc 
Request: Send a blank email to phpdoc+get-969343249@lists.php.net to get a copy of this message
cortesi Thu Mar 21 05:48:26 2002 EDT Modified files: /phpdoc/it/functions pcre.xml Log: update to EN 1.76 by Darvin Andrioli

Index: phpdoc/it/functions/pcre.xml diff -u phpdoc/it/functions/pcre.xml:1.6 phpdoc/it/functions/pcre.xml:1.7 --- phpdoc/it/functions/pcre.xml:1.6 Mon Mar 18 12:57:58 2002 +++ phpdoc/it/functions/pcre.xml Thu Mar 21 05:48:26 2002 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- EN-Revision: 1.75 Maintainer: darvin Status: ready --> +<!-- EN-Revision: 1.76 Maintainer: darvin Status: ready --> <reference id="ref.pcre"> <title>Funzioni per le espressioni regolari (Perl compatibili)</title> <titleabbrev>PCRE</titleabbrev> @@ -16,8 +16,8 @@ </para> <para> Il delimitatore finale può essere seguito da vari modificatori - che agiscono sul criterio di riconoscimento. Vedere il capitolo - <link linkend="pcre.pattern.modifiers">Modificatori di criterio (Pattern Modifiers)</link>. + che agiscono sul criterio di riconoscimento. Per maggiori informazioni si rimanda al + capitolo <link linkend="pcre.pattern.modifiers">Modificatori di criterio (Pattern Modifiers)</link>. </para> <para> Utilizzando le <link linkend="ref.regex">funzioni POSIX-esteso</link> @@ -29,7 +29,7 @@ <para> Il supporto delle espressioni regolari è ottenuto mediante la libreria PCRE, che è un software open source, scritto da Philip Hazel, - e il cui copyright è detenuto dalla Università di Cambridge, + ed il cui copyright è detenuto dalla Università di Cambridge, Inghilterra. La libreria è disponibile all'indirizzo <ulink url="&url.pcre;">&url.pcre;</ulink>. </para> @@ -49,14 +49,14 @@ <section id="pcre.configuration"> <title>Configurazioni per l'esecuzione (Runtime Configuration)</title> <para> - Questa estensione non prevede nessuna funzionalità in merito. + Questa estensione non prevede alcuna funzionalità in merito. </para> </section> <section id="pcre.resources"> <title>Tipologia di risorse</title> <para> - Questa estensione non specifica nessun tipo di risorsa. + Questa estensione non specifica alcun tipo di risorsa. </para> </section> @@ -70,7 +70,7 @@ <title>Esempi</title> <para> <example> - <title>Esempi di espressioni di riconoscimento validi</title> + <title>Esempi di espressioni di riconoscimento valide</title> <itemizedlist> <listitem><simpara>/&lt;\/\w+&gt;/</simpara></listitem> <listitem><simpara>|(\d{3})-\d+|Sm</simpara></listitem> @@ -119,8 +119,8 @@ <methodparam choice="opt"><type>array</type><parameter>testi_riconosciuti</parameter></methodparam> </methodsynopsis> <para> - Esegue un riconoscimento in <parameter>testo</parameter> utilizzando - le espressioni regolari passate in <parameter>criterio</parameter>. + Esegue un riconoscimento nel parametro <parameter>testo</parameter> utilizzando + l'espressione regolare indicata in <parameter>criterio</parameter>. </para> <para> Se viene fornito il terzo parametro, <parameter>testi_riconosciuti</parameter>, questo verrà valorizzato @@ -291,7 +291,7 @@ l'intero criterio impostato, $out[0][1] conterrà il testo riconosciuto tramite il prima regola di riconoscimento presente nel criterio globale. Analogo discorso si può fare per $out[1]. In questo caso il ragionamento - verrà svolta su un secondo segmento della stringa che soddisfa le + verrà svolto su un secondo segmento della stringa che soddisfi le condizioni poste dal criterio di riconoscimento. </para> </listitem> @@ -305,7 +305,7 @@ <para> La funzione restituisce il numero dei riconoscimenti completi svolti, oppure &false; se non si hanno testi riconosciuti, o - si verificano degli errori. + se si verificano degli errori. </para> <para> <example> @@ -323,7 +323,7 @@ <title>Ricerca di tag HTML</title> <programlisting role="php"> <![CDATA[ -// Il parametro \\2 è un esempio riferimento all'indietro. Questo dato informa la +// Il parametro \\2 è un esempio di riferimento all'indietro. Questo dato informa la // libreria pcre che deve considerare il secondo set di parentesi tonde (in questo // caso il testo "([\w]+)"). Il backslash (\) aggiuntivo è reso obbligatorio dall'uso // dei doppi apici. @@ -463,7 +463,7 @@ ]]> </programlisting> <para> - In questo esempio tutti i tag HTML presenti nel testo di + Nell'esempio precedente tutti i tag HTML presenti nel testo di input saranno convertiti in maiuscolo. </para> </example> @@ -570,10 +570,10 @@ <note> <para> - Il parametro <parameter>flags</parameter> è stato aggiunto - nella versione 4 Beta 3 di PHP. + Il parametro <parameter>flags</parameter> è stato aggiunto nella versione 4 Beta 3 di PHP. </para> </note> + <para> La funzione restituisce una matrice di parti di <parameter>testo</parameter> suddivisi tramite i criteri @@ -590,7 +590,7 @@ <para> Il parametro <parameter>flags</parameter> può essere la combinazione dei - seguenti flag ( la combinazione di più flag avviene con l'operatore | ): + seguenti flag (la combinazione di più flag avviene con l'operatore |): <variablelist> <varlistentry> <term>PREG_SPLIT_NO_EMPTY</term> @@ -615,8 +615,7 @@ </para> <para> <example> - <title>Esempio di utilizzo di <function>preg_split</function>: - Come ottenere le parti di un testo.</title> + <title>Esempio di <function>preg_split</function>: Come ottenere le parti di un testo.</title> <programlisting role="php"> <![CDATA[ // Suddivide la seguente frase in base alla presenza di virgole, spazi bianchi, @@ -727,6 +726,7 @@ <methodparam><type>string </type><parameter>espressione_regolare</parameter></methodparam> <methodparam><type>array </type><parameter>testo</parameter></methodparam> </methodsynopsis> + <para> La funzione <function>preg_grep</function> restituisce una matrice composta dagli elementi dell'array <parameter>testo</parameter> che @@ -827,7 +827,7 @@ Se si attiva questo modificatore, verranno ignorati gli spazi presenti nell'espressione regolare, tranne quelli preceduti dal carattere di escape (\) o posti all'interno di una classe - di caratteri. , inoltre, ignorati i caratteri posti + di caratteri. Saranno, inoltre, ignorati i caratteri posti tra il simbolo # (se non è preceduto dall'escape, ed è posto al di fuori di una classe di caratteri) ed il successivo carattere di "a capo" (newline). Questo comportamento equivale al flag /x @@ -860,7 +860,7 @@ <simpara> Se si specifica questo modificatore, si forza un 'ancoraggio' del criterio di ricerca. In pratica questo viene costretto - a riconoscere il testo su cui si fa la ricerca solo all'inizio. + a riconoscere il testo su cui si fa la ricerca solo dall'inizio. Questo effetto può essere ottenuto anche con particolari costruzioni dell'espressione regolare, che rappresentano gli unici modi utilizzabili in Perl per ottenere il medesimo scopo. @@ -939,7 +939,6 @@ </refentry> <refentry id="pcre.pattern.syntax"> - <refnamediv> <refname>Sintassi delle espressioni regolari</refname> <refpurpose>Descrizione della sintassi utilizzata da PCRE @@ -1118,8 +1117,8 @@ di riferimento. Una espressione regolare è un criterio utilizzato per - identificare parti di un testo partendo da destra verso - sinistra. La maggior parte delle lettere identifica se + identificare parti di un testo partendo da sinistra verso + destra. La maggior parte delle lettere identifica se stessa nel testo oggetto del riconoscimento. Ad esempio il banale testo <literal>La volpe veloce</literal> intercetta la parte del testo uguale all'espressione @@ -1132,15 +1131,15 @@ La potenza delle espressioni regolari deriva dalla possibilità di inserire criteri alternativi oppure ripetuti. Questi sono codificati nel criterio di - ricerca tramite l'uso di <emphasis>meta</emphasis>- - <emphasis>caratteri</emphasis>, lettere che non indicano - se stesse, ma sono interpretate in modo particolare. + ricerca tramite l'uso di <emphasis>meta-caratteri</emphasis>, + lettere che non indicano se stesse, ma sono interpretate + in modo particolare. </para> <para> Esistono due differenti set di meta-caratteri: quelli che sono riconosciuti ovunque tranne che all'interno di parentesi quadrate, e quelli che sono riconosciuti all'interno di parentesi - quadrate. I meta-caratteri che stanno all'esterno delle + quadrate. I meta-caratteri che si usano all'esterno delle parentesi quadrate sono: <variablelist> <varlistentry> @@ -1299,13 +1298,13 @@ </para> </refsect2> <refsect2 id="regexp.reference.backslash"> - <title>backslash</title> + <title>Backslash</title> <para> Il carattere backslash (\) ha diversi utilizzi. Primo uso: se viene anteposto a caratteri non alfanumerici, rimuove gli eventuali significati speciali che il carattere può avere. Questo utilizzo di backslash come carattere di escape può - essere svolto sia all'interno delle classi di caratteri che + essere svolto sia all'interno delle classi di caratteri sia all'esterno. </para> <para> @@ -1324,7 +1323,7 @@ di una classe di caratteri), e i caratteri posti tra "#" e un "a capo" all'esterno di una classe di caratteri sono ignorati. Un backslash può essere usato come escape per inserire uno - spazio bianco o il carattere "#" come parte del criterio di + spazio bianco od il carattere "#" come parte del criterio di riconoscimento. </para> <para> @@ -1430,21 +1429,21 @@ cifre, saranno usati i numeri presenti. Pertanto la sequenza "<literal>\0\x\07</literal>" indica 2 zeri binari seguiti dal carattere BEL. Occorre accertarsi di passare le cifre necessarie - dopo lo zero iniziale se il carattere che segue possa essere + dopo lo zero iniziale se il carattere che segue può essere scambiato per una cifra in ottale. </para> <para> Più complicata è la gestione del backslash seguito da una cifra - diversa da 0. Al di fuori di una classe di caratteri PCRE + diversa da 0. Al di fuori di una classe di caratteri, PCRE tratta le cifre che trova come numeri decimali. Se il numero è inferiore a 10, oppure vi sono state almeno altrettante - parentesi sinistre ")", la sequenza viene considerata come un + parentesi sinistre, la sequenza viene considerata come un <emphasis>riferimento</emphasis> <emphasis>all'indietro</emphasis>. Più avanti, nella parte dei criteri parziali, sarà descritto come funzionano questi riferimenti. </para> <para> - All'interno di una classe di caratteri, oppure il numero decimale + All'interno di una classe di caratteri, oppure nel caso in cui il numero decimale è maggiore di 9 e non ci sono stati altrettanti criteri parziali, PCRE rilegge le prime 3 cifre seguenti il backslash in ottale e genera il carattere dagli 8 bit meno significativi del valore @@ -1610,8 +1609,8 @@ I caratteri definiti "parole" sono quelle lettere o cifre o il carattere underscore (_), cioè qualsiasi carattere che possa essere parte di una "<literal>parola</literal>" - in Perl.In PCRE le definizioni di lettere e cifre vengono gestite - tramite tabelle dei caratteri, che possono variare in base + in Perl. In PCRE le definizioni di lettere e cifre vengono gestite + tramite le tabelle dei caratteri, che possono variare in base a specifici parametri di localizzazione (vedere il paragrafo intitolato "Supporto alle localizzazioni"). Ad esempio, nella localizzazione fr (relativa alla Francia), qualche @@ -1752,8 +1751,8 @@ non influisce sull'asserzione \Z. Il comportamento dei simboli "^" e "$" può essere influenzato - dall'opzione <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link>. - Quando viene attivata, questi caratteri identificano rispettivamente, + dall'opzione <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link>. Quando viene + attivata, questi caratteri identificano rispettivamente, oltre ai tradizionali inizio e fine testo, la lettera immediatamente successiva ed immediatamente precedente il carattere "\n" presente all'interno della stringa oggetto di ricerca. Per esempio il @@ -1776,7 +1775,7 @@ <literallayout> Il carattere punto ".", all'esterno di una classe di caratteri, identifica qualsiasi carattere, anche quelli non stampabili, - ma (per default) non il carattere "a capo".Invece se si + ma (per default) non il carattere "a capo". Invece se si abilita l'opzione <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> si avrà anche il riconoscimento del carattere "a capo". La gestione del simbolo "." è svincolata dalla gestione dei @@ -1825,8 +1824,7 @@ Il carattere di "a capo" (newline) non viene trattato in modo speciale nelle classi di caratteri, indipendentemente - dalle opzioni <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> - o <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link>. + dalle opzioni <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> o <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link>. La classe [^a] riconosce sempre il carattere "a capo". Il segno meno (-) può essere usato per definire un intervallo @@ -1841,7 +1839,7 @@ Non è possibile usare il carattere "]" come limite di un intervallo. Un criterio definito come [W-]46], viene inteso come una classe di due caratteri (W e -) seguita dalla stringa - 46], così sarebbero riconosciuti i testi "W46]" oppure "-46]". + 46], in tal modo sarebbero riconosciuti i testi "W46]" oppure "-46]". Quindi è necessario precedere la lettera "]" con il carattere di escape (\), in questo modo [W-\]46], viene interpretata correttamente come una singola classe contenente un range seguito @@ -1886,7 +1884,7 @@ può riconoscere "gilbert" oppure "sullivan". Ci possono essere innumerevoli alternative, compresa un'alternativa vuota (per identificare una stringa vuota). Il processo di riconoscimento - prova tutte le alternative possibili (da destra a sinistra) + prova tutte le alternative possibili (da sinistra a destra) fino a quando non ne trova una che sia soddisfatta. Se le alternative sono nella definizione di un criterio parziale il riconoscimento ha successo quando avviene su tutto il criterio. @@ -1896,10 +1894,8 @@ <refsect2 id="regexp.reference.internal-options"> <title>Settaggio delle opzioni interne</title> <literallayout> - Le opzioni <link linkend="pcre.pattern.modifiers">PCRE_CASELESS</link> , - <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link> , - <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> - e <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link> + Le opzioni <link linkend="pcre.pattern.modifiers">PCRE_CASELESS</link>, <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link> , + <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> e <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link> possono essere cambiate "al volo" dall'interno del criterio di riconoscimento, utilizzando le sequenze di lettere definite per queste opzioni in Perl, racchiuse tra "(?" ed ")". Le lettere @@ -1914,15 +1910,15 @@ tra lettere maiuscole e minuscole e la modalità multi-linea. E' anche possibile disabilitare queste opzioni facendo precedere la lettera dal segno meno (-), o combinare l'attivazione con la - disattivazione come nel caso (?im-sx), in cui si attiva <link linkend="pcre.pattern.modifiers">PCRE_CASELESS</link> e <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link> - e si disattiva <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> e <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link>. + disattivazione come nel caso (?im-sx), in cui si attiva <link linkend="pcre.pattern.modifiers">PCRE_CASELESS</link> e + <link linkend="pcre.pattern.modifiers">PCRE_MULTILINE</link> e si disattiva <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link> e <link linkend="pcre.pattern.modifiers">PCRE_EXTENDED</link>. Se la lettera compare sia prima che dopo il segno meno (-) l'opzione resta disabilitata. L'ambito di validità delle opzioni dipende da dove sono i flag di abilitazione/disabilitazione nel criterio di ricerca. - Nei casi in cui il settaggio di un'opzione avviene all'esterno - di qualsiasi criterio parziale (come definito in seguito) gli + Nei casi in cui il settaggio di un'opzione avvenga all'esterno + di un qualsiasi criterio parziale (come definito in seguito) gli effetti sono medesimi di quando l'attivazione/disattivazione avviene all'inizio del criterio di riconoscimento. Gli esempi seguenti si comportano tutti allo stesso modo: @@ -1940,9 +1936,9 @@ utilizzato quello più a destra. Se si inserisce la variazione di un'opzione in una sotto-regola - gli effetti sono differenti. Questo è una variazione dal comportamento - di Perl 5.005. Una variazione apportata all'interno di una - sotto-regola, vale solo per la parte della sotto-regola + gli effetti sono differenti. Questa è una variazione rispetto al + comportamento di Perl 5.005. Una variazione apportata all'interno + di una sotto-regola, vale solo per la parte della sotto-regola che segue la variazione, pertanto (a(?i)b)c @@ -1952,7 +1948,7 @@ Da ciò deriva che le opzioni possono avere comportamenti differenti nelle varie parti del criterio di riconoscimento. Ogni variazione apportata ad una ramo alternativo del criterio viene estesa alle - alternative successive delle medesima sotto-regola. Ad esempio, + alternative successive della medesima sotto-regola. Ad esempio, (a(?i)b|c) @@ -1962,8 +1958,7 @@ vengono inseriti nella fase di compila. Diversamente si avrebbero dei comportamenti molto bizzarri. - Le opzioni specifiche di PCRE <link linkend="pcre.pattern.modifiers">PCRE_UNGREEDY</link> - e <link linkend="pcre.pattern.modifiers">PCRE_EXTRA</link> + Le opzioni specifiche di PCRE <link linkend="pcre.pattern.modifiers">PCRE_UNGREEDY</link> e <link linkend="pcre.pattern.modifiers">PCRE_EXTRA</link> possono essere variate nel medesimo modo delle opzioni Perl compatibili, utilizzando rispettivamente i caratteri U e X. Il flag (?X) è particolare poiché deve comparire @@ -2011,9 +2006,9 @@ Il fatto che le parentesi tonde adempiano a due funzioni non sempre porta a situazioni comprensibili. Spesso capita di dovere raggruppare delle sotto-regole senza per questo essere - richiesto la cattura del testo. A tale scopo l'uso della + richiesta la cattura del testo. A tale scopo l'uso della sequenza "?:" dopo la parentesi di apertura permette di indicare - che questa sotto-regola non deve catturare il testo, ne viene + che questa sotto-regola non deve catturare il testo, e non deve essere conteggiata nel numero d'ordine delle sotto-regole di cattura. Ad esempio, applicando il criterio @@ -2032,7 +2027,7 @@ (?i:saturday|sunday) (?:(?i)saturday|sunday) - riconoscono esattamente lo stesso set di parole. poiché i rami + riconoscono esattamente lo stesso set di parole. Poiché i rami alternativi sono provati da sinistra verso destra, e le opzioni non sono azzerate fino a quando non si è conclusa la sotto-regola, una opzione attivata in un ramo alternativo si applica a tutte @@ -2053,7 +2048,7 @@ una classe di caratteri un riferimento all'indietro (vedere la sezione successiva) una sotto-regola (a meno che non si tratti di una asserzione - - vedere più avanti) + vedere più avanti) In generale una occorrenza specifica un numero minimo e massimo di riconoscimenti previsti tramite la specifica dei due limiti, @@ -2086,7 +2081,7 @@ L'indicazione {0} è permessa. Indica di comportarsi come se l'elemento precedente all'occorrenza non fosse presente. - Per praticità (e compatibilità con il passato) si usano 3 + Per praticità (e compatibilità verso il passato) si usano 3 abbreviazioni per le occorrenze più comuni: * equivale a {0,} @@ -2103,7 +2098,7 @@ durante la fase di compila per questi criteri. Tuttavia, poiché vi sono casi dove questi criteri possono essere utili, queste regole sono accettate, ma, se la ripetizione non riconosce - alcun carattere, il ciclo viene interrotto, + alcun carattere, il ciclo viene interrotto. Per default le occorrenze sono "bramose", infatti identificano più testi possibile (fino al numero massimo permesso), senza @@ -2119,7 +2114,7 @@ se applicato al commento - /* first command */ not comment /* second comment */ + /* primo commento */ nessun commento /* secondo commento */ non ha successo, perché identifica l'intera stringa a causa della "bramosia" dell'elemento ".*". @@ -2131,7 +2126,7 @@ /\*.*?\*/ si comporta correttamente con i commenti C. Il significato - delle varie occorrenze non è stato cambiato, se è soltanto + delle varie occorrenze non è stato cambiato, si è soltanto modificato il numero delle occorrenze da riconoscere. Attenzione a non confondere questo uso del punto interrogativo con il suo proprio significato. Dati i due utilizzi del ?, può @@ -2149,8 +2144,8 @@ resa "bramosa" se seguita dal punto interrogativo. In altre parole si è invertito il normale comportamento. - Quando si indica un numero minimo di occorrenze, per una - sotto-regola posta tra parentesi, maggiore di 1, oppure + Quando si indica un numero minimo di occorrenze maggiore di 1, + per una sotto-regola posta tra parentesi, oppure si indica un numero massimo di occorrenze, la fase di compila richiede più spazio in proporzione ai valori minimo e massimo. @@ -2172,8 +2167,8 @@ per indicare in modo esplicito un ancoraggio. Quando si ripete una sotto-regola di cattura, il testo - estrapolato è quella parte che è identificata dall'iterazione - finale. Ad esempio se il criterio + estrapolato è la parte identificata dall'iterazione finale. + Ad esempio se il criterio (tweedle[dume]{3}\s*)+ @@ -2199,12 +2194,12 @@ il numero delle parentesi chiuse precedenti. Tuttavia, se il numero che segue il backslash (\) è un valore - inferiore a 10, si assume sempre che si tratti sempre di un riferimento + inferiore a 10, si assume che si tratti sempre di un riferimento all'indietro, e pertanto viene generato un errore se nel criterio non vi sono almeno altrettante parentesi chiuse di sotto-regole di cattura. In altre parole per i numeri inferiori a 10 non è necessario che il numero parentesi precedenti (a sinistra) - alla sotto-regola pari o maggiori al numero indicato. + alla sotto-regola sia pari o maggiore al numero indicato. Vedere la sezione relativa al backslash per informazioni su come gestire le cifre seguenti il backslash. @@ -2235,7 +2230,7 @@ (a|(bc))\2 non avrà mai successo se l'identificazione della stringa - inizia con "a" e non con "bc". poiché sono possibili fino a 99 + inizia con "a" e non con "bc". Dato che sono possibili fino a 99 riferimenti all'indietro, tutte le cifre che seguono un backslash (\) sono considerate come parte di un potenziale numero di riferimento. Se il criterio continua con altri caratteri @@ -2302,7 +2297,7 @@ per ottenere effetto desiderato. Le asserzioni che "guardano" indietro positive iniziano con - "(?&lt;=", con "(?&lt;!" le negative. Ad esempio: + "(?&lt;=", e con "(?&lt;!" le negative. Ad esempio: (?&lt;!foo)bar @@ -2354,7 +2349,7 @@ singolarmente sul medesimo punto nella stringa oggetto di riconoscimento. Nell'esempio precedente per prima cosa si verifica che i tre caratteri precedenti siano cifre, quindi - che le non siamo "999". Questo esempio non identifica il testo + che non siamo "999". Questo esempio non identifica il testo se "foo" è preceduto da sei caratteri di cui i primi tre siano cifre e i secondi tre non siano "999". In pratica il testo "123abcfoo" non viene riconosciuto. Un criterio per riconoscere @@ -2618,8 +2613,8 @@ In principio si identifica la parentesi di apertura. Quindi si cerca un numero indefinito di stringhe che possano essere composte da caratteri che non siano parentesi, oppure che - sia riconosciute ricorsivamente dal criterio (ad esempio una - stringa correttamente tra parentesi). Alla fine si cerca la + siano riconosciute ricorsivamente dal criterio (ad esempio una + stringa correttamente tra parentesi). Infine si cerca la parentesi di chiusura. In questo particolare esempio si hanno arbitrarie ripetizioni @@ -2666,16 +2661,15 @@ <refsect2 id="regexp.reference.performances"> <title>Performances</title> <literallayout> - Certi elementi utilizzati per i criteri sono più efficienti di - altri. E' più efficiente usare le classi di caratteri come + Certi elementi utilizzati per i criteri di riconoscimento sono più + efficienti di altri. E' più efficiente usare le classi di caratteri come [aeiou] piuttosto che un gruppo di alternative come (a|e|i|o|u). In generale la costruzione più semplice per ottenere un dato scopo è la più efficiente. Nel libro di Jeffrey Friedl sono illustrate varie tecniche sull'ottimizzazione delle espressioni regolari. - Quando un criterio comincia con .* ed è attiva l'opzione - <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link>, il + Quando un criterio comincia con .* ed è attiva l'opzione <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link>, il criterio è implicitamente ancorato da PCRE, dato che può rico- noscere solo l'inizio della stringa. Tuttavia, se non è attivo <link linkend="pcre.pattern.modifiers">PCRE_DOTALL</link>, PCRE non può @@ -2709,9 +2703,9 @@ Questo può riconoscere "aaaa" in 33 modi differenti, e questo numero può crescere molto rapidamente se la stringa da ricono- - scere è più lunga.(Il carattere di ripetizione * può eseguire + scere è più lunga. (Il carattere di ripetizione * può eseguire riconoscimenti per 0,1,2,3 o 4 ripetizioni, e per ciascuna di - queste, tranne lo 0, il carattere di ripetizione + può esegui- + esse, tranne lo 0, il carattere di ripetizione + può esegui- re riconoscimenti per diversi numeri di volte). Quindi se la parte successiva del criterio è tale da non permettere il com- pletamento del riconoscimento, PCRE, per principio, ugualmente @@ -2724,7 +2718,7 @@ dove si indica che seguirà un carattere alfanumerico. PCRE, prima di imbarcarsi nella procedura standard di riconoscimen- - to, verifica se ne testo vi è la lettera "b", e se non c'è + to, verifica se nel testo vi è la lettera "b", e se non c'è restituisce immediatamente un esito negativo. Tuttavia se non viene indicata una lettera seguente questa ottimizzazione non può essere utilizzata. Se ne può notare la differenza analiz-
« previous php.doc (#969343249) next »