Bra språk för text processing, tips?

Permalänk

Bra språk för text processing, tips?

Letar efter ett språk som lämpar sig för att extrahera och manipulera textdata och tex. fylla en databas eller strukturera upp på annat vis. Regular expressions är ju trevligt, men det finns ju väldigt många olika implementationer samt andra intressanta tekniker. Kommer ihåg att Haskell var rätt kul och effektivt att jobba i. Har också hört mycket gott om (G)AWK, Python/Perl funkar också antar jag? Är tex. Gawk jobbigt att lära sig? Tips välkomnas tacksamt.

Visa signatur

Hör ropen skalla: Mer CO-OP åt oss alla!
Fanboys är kapitalismens svar på religiösa fundamentalister.
Upplysning für alle: www.thesciencenetwork.org www.transhumanism.org

Permalänk
Medlem

jag har skrivit en applikation som tar flera tusen rader text i CSV.format och läser in i en MSSQL-databas - allt gjort i C# / SQL och det fungerar riktigt bra...

nu håller jag på med outputen av ovan data til en excel-fil med diagram - lite bökigt...

Visa signatur

Har varit på detta forum på tok för länge...

Permalänk

Kul! Jag behärskar C# helt ok, även om jag är måttligt imponerad av IO-bibloteket. Har inte kollat så mycket på regulära uttryck i C# men antar att det är liknande java, säkert ganska bra. Mest sugen på awk tror jag, verkar inte vara allt för svårt och komplicerat. Gillar inte riktigt Perl heller (så mycket syntax:)) och då är nog awk ett bra alternativ om man ser till detta smala område.

Visa signatur

Hör ropen skalla: Mer CO-OP åt oss alla!
Fanboys är kapitalismens svar på religiösa fundamentalister.
Upplysning für alle: www.thesciencenetwork.org www.transhumanism.org

Permalänk
Medlem

SML eller Ocaml. Mina favospråk, men jag tänker inte övertala dig. Har dock bra inbyggt stöd för strängmanipulation och regexp följer med Ocaml har jag för mig. Men funktionella språk är lite annorlunda om man inte är van.

Permalänk
Hedersmedlem
Citat:

perl - Practical Extraction and Report Language

Gissa vad Perl skrevs för...

Enzo: O'Caml har stöd för standard-regexp från början, detta kan dock bli lite jobbigt att jobba med i längden. Som tur är finns ett par PCRE-bibliotek.
Härligt med någon mer som har O'Caml som favoritspråk, för övrigt.

Visa signatur

Vim
Kinesis Classic Contoured (svart), Svorak (A5)
Medlem i signaturgruppen Vimzealoter.

Permalänk
Medlem

Jo, jag har sett att du vurmat för Ocaml i andra trådar och glatt mig åt samma sak

Var ett par år sen jag aktivt hackade (oca)ml, men gillar man kompakt, snabbexekverad, snabbskriven och snygg kod så...

Permalänk
Medlem

Re: Bra språk för text processing, tips?

Citat:

Ursprungligen inskrivet av nienithaur
Letar efter ett språk som lämpar sig för att extrahera och manipulera textdata och tex. fylla en databas eller strukturera upp på annat vis. Regular expressions är ju trevligt, men det finns ju väldigt många olika implementationer samt andra intressanta tekniker. Kommer ihåg att Haskell var rätt kul och effektivt att jobba i. Har också hört mycket gott om (G)AWK, Python/Perl funkar också antar jag? Är tex. Gawk jobbigt att lära sig? Tips välkomnas tacksamt.

Om det räcker med reguljära uttryck så kan du ju använda vilket språk som helst eftersom alla kan göra det. Behöver du kunna parse'a klurigare språk än reguljära så kan jag tipsa om att Antlr är en ganska bra parsergenerator som kan generera parsers i många olika språk (fast den funkar nog bäst med Java).

Visa signatur

Alla män är dödliga. Sokrates var dödlig. Alltså är alla män Sokrates.

Permalänk
Citat:

Ursprungligen inskrivet av Enzo
SML eller Ocaml. Mina favospråk, men jag tänker inte övertala dig. Har dock bra inbyggt stöd för strängmanipulation och regexp följer med Ocaml har jag för mig. Men funktionella språk är lite annorlunda om man inte är van.

Jo, jag skrev i första posten att jag hade positiva erfarenheter av Haskell, så gillar helt klart funktionella språk. Har en bok om SML hemma som köpt i samband med en kurs i programspråk vilken jag förvisso inte läst ett ord i. Men gillar Haskell som sagt så skulle säkert uppskatta även Ocaml och SML. Tror Perl kom till mycket på grund av frustration över AWK, vilket bådar gott för språket (syftar på AWK).

Citat:

Ursprungligen inskrivet av selotodo
Om det räcker med reguljära uttryck så kan du ju använda vilket språk som helst eftersom alla kan göra det. Behöver du kunna parse'a klurigare språk än reguljära så kan jag tipsa om att Antlr är en ganska bra parsergenerator som kan generera parsers i många olika språk (fast den funkar nog bäst med Java).

Jo, RE duger ju till det mesta innom textprocessing. Men det finns ju mer eller mindre lyckade implementationer, samt att språket i övrigt till stor del avgör hur smärtfritt det är att jobba med dem. Antlr verkar trevligt även om det kanske är lite overkill för mina syften.

Visa signatur

Hör ropen skalla: Mer CO-OP åt oss alla!
Fanboys är kapitalismens svar på religiösa fundamentalister.
Upplysning für alle: www.thesciencenetwork.org www.transhumanism.org

Permalänk
Medlem

Om du gillar Haskell så varför inte börja med att testa just Haskell
Beroende på vad du ska göra så är ju tex parsec-biblioteket ganska trevligt.

Permalänk
Citat:

Ursprungligen inskrivet av vb
Om du gillar Haskell så varför inte börja med att testa just Haskell
Beroende på vad du ska göra så är ju tex parsec-biblioteket ganska trevligt.

Jo du har rätt. Gillar som sagt Haskell, skulle säga älska om det inte vore för att det finns väldigt många funktionella språk som jag inte testat och vill inte använda upp alla superlativ innan man gett dem en ordentlig chans. Men funtionell programmering är ju i vilket fall väldigt trevligt.

Awk känns intressant då det dels verkar rätt skysst, dels för att det finns tillgängligt i nästan alla unixmiljöer.

Men skall med ens kolla närmare på Parsec.

Visa signatur

Hör ropen skalla: Mer CO-OP åt oss alla!
Fanboys är kapitalismens svar på religiösa fundamentalister.
Upplysning für alle: www.thesciencenetwork.org www.transhumanism.org

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av nienithaur
Awk känns intressant då det dels verkar rätt skysst, dels för att det finns tillgängligt i nästan alla unixmiljöer.
[/B]

Awk är väl bara en sämre och äldre Perl.. Står du ut med Awks eller Perls syntax och typsystem så är nog Perl ett bättre val än Awk, speciellt om du ska prata med databaser.

Jag röstar för Haskell, men om Antlr är overkill så är Parsec antagligen också det.

Visa signatur

Alla män är dödliga. Sokrates var dödlig. Alltså är alla män Sokrates.

Permalänk
Citat:

Ursprungligen inskrivet av selotodo
Awk är väl bara en sämre och äldre Perl.. Står du ut med Awks eller Perls syntax och typsystem så är nog Perl ett bättre val än Awk, speciellt om du ska prata med databaser.

Jag röstar för Haskell, men om Antlr är overkill så är Parsec antagligen också det.

Jo, tänkte också på det när jag väl började gräva lite i det hela. Men jag känner mig mer motiverad att lära mig Parsec då jag redan har lite koll på haskell, så skall ge det ett försök i vilket fall. Jo, har läst att alla språkkonstruktioner som finns i awk också finns i Perl. Så tänkte att det kanske inte är så dumt att lära sig awk eftersom man antagligen kommer ha nytta av de kunskaperna om man någon gång skulle få för sig att lära sig perl ordentligt. Då får man man också två språk för priset av ett. Har läst ett par kapitel i Programming Perl, och det är ju absolut inget svårt språk, men väldigt mycket syntax och passar nog inte inom min tidsbudget för närvarande.

Visa signatur

Hör ropen skalla: Mer CO-OP åt oss alla!
Fanboys är kapitalismens svar på religiösa fundamentalister.
Upplysning für alle: www.thesciencenetwork.org www.transhumanism.org

Permalänk
Medlem

Perl är som gjort för det du söker.