Domanda

Che cosa la gente intende quando si dice "Perl è molto bravo a parsing"?

Come è Perl migliore o più potente di altri linguaggi di scripting come Python o Ruby?

È stato utile?

Soluzione

Significano che Perl è stato originariamente progettato per l'elaborazione dei file di testo e ha molte caratteristiche che lo rendono facile:

  • Perl ha molte funzioni per l'elaborazione delle stringhe: substr, index, chomp, length, grep, sort, reverse, lc, ucfirst, ...
  • Perl converte automaticamente tra numeri e stringhe a seconda di come viene utilizzato un valore. (Ad esempio, si può leggere la sequenza di caratteri '100' da un file e aggiungere un ad esso senza bisogno di fare una stringa a intero di conversione prima)
  • Perl gestisce automaticamente la conversione da e per la codifica della piattaforma (ad esempio CRLF su Windows) e un ritorno a capo logica ( "\ n") all'interno del programma.
  • Le espressioni regolari sono integrati nella sintassi, invece di essere una libreria separata.
  • espressioni regolari del Perl sono il "gold standard" per il potere e la funzionalità.
  • Perl ha il pieno supporto Unicode.

Python e Ruby hanno anche buone strutture per l'elaborazione del testo. (Rubino, in particolare, ha preso molta ispirazione da Perl, così come Perl è spudoratamente preso in prestito da molte altre lingue.) C'è poco senso chiedere quale sia il migliore. Utilizzare quello che ti piace.

Altri suggerimenti

Non prenda una dichiarazione dei punti di forza di Perl per essere una dichiarazione dei difetti di un'altra lingua. Perl è un bene per l'elaborazione del testo, ma questo non significa che Ruby o Python succhiano.

Quando si parla di Perl essere "buoni per l'analisi", stanno principalmente eco la storia di Perl; è stato inventato nel giorno in cui l'elaborazione del testo pesanti non è stato facile. Prova a fare un po 'di quella in C o C ++ (Java non era stato ancora inventato, sia!). Indietro nel giorno, Larry stava cercando di fare il suo lavoro con sed e awk, ma correre in loro limiti. Ha fatto uno strumento che ha reso il testo ancora più facile da lavorare.

Perl è ancora molto buona per le attività di manipolazione del testo, ma ora lo sono anche un sacco di altre lingue.

Perl è un bene per ETL o di elaborazione batch movimenti pure. Si tratta di una quantità minima di codice per prelevare il file; spingerlo attraverso split per ottenere un map, eseguire alcune azioni di business logiche sul record e scrivere di nuovo su disco.

Suppongo che sia più l'elaborazione dei dati, allora l'analisi dei dati, ma l'elaborazione dei dati di massa è l'analisi dei dati.

Perl è molto buono in analisi del testo, rispetto al C / C ++ / Java.

E 'probabilmente perché la gente è abituata a ciò che è stato costruito per, come descritto nella perl documentazione , così è diventato un luogo comune per molte persone di associare l'analisi dei file di testo con il Perl. Non escludere Ruby o Python, è solo più di un nome di famiglia IMHO.

  

Perl è un linguaggio ottimizzato per la scansione di file di testo arbitrari, l'estrazione di informazioni da questi file di testo e la stampa di report basati su tali informazioni. E 'anche un buon linguaggio per molte attività di gestione del sistema. La lingua è destinato ad essere pratico (facile da usare, efficiente, completo) piuttosto che bello (piccolo, elegante, minimale).

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