Domanda

Ho qualche codice http://www.hyllander.org/node/23 che utilizza $* ( "dollaro asterisco" o "dollaro stella"), ma la mia versione di Perl rapporti:

$* is no longer supported at migrate.pl line 284.

Sai che cosa sono stati gli effetti collaterali di fare

$*=1

Lo che influenzano in qualche modo funzioni come split o tokenizers o espressioni regolari?

È stato utile?

Soluzione

Ecco una parte della produzione di perldoc perlvar:

  

$ * Impostare su un valore intero diverso da zero per fare multi-linea   corrispondenza all'interno di una stringa, 0 (o   non definito) per dire a Perl che possa   presumono che le stringhe contengono un singolo   linea, allo scopo di ottimizzare   modello corrisponde. Modello corrisponde a   stringhe contenenti più a capo   in grado di produrre risultati confusi quando $ *   è 0 o non definito. Il valore predefinito è   non definito. (Memo: * le partite   le cose più.) Questa variabile   influenza l'interpretazione di soli   "^" E "$". Un ritorno a capo letterale può essere   cercato anche quando "$ * == 0".

     

Utilizzo di $ * è deprecato nella moderna   Perl, soppiantato dai "/ s" e "/ m"   modificatori di pattern matching.

     

L'assegnazione di un valore non numerico a $ *   innesca un avvertimento (e rende $ * atto   se "$ * == 0"), mentre l'assegnazione di un   valore numerico a $ * fa che un   implicito "int" viene applicato sulla   valore.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top