Liten¨ovningmed Perl by odn41067

VIEWS: 6 PAGES: 2

									 ¨
GOTEBORGS UNIVERSITET                                                                       10 november 2005
Utbildningsprogrammet i datalingvistik
Robert Andersson




                                          o
                                    Liten ¨vning med Perl


            o                                       o     o
Innan du b¨rjar med uppgifterna i laborationen b¨r du ¨ppna en terminal och logga in p˚      a
panini.cling.gu.se via ssh. Givetvis fungerar de flesta av kommandona i unix-liknande termi-
       a
naler p˚ andra maskiner och operativsystem, t ex cygwin under windows eller terminalverktyget i
                a                  at
MacOS X. Men d˚ kommer du inte ˚ filerna hemma hos ra.

Studera filen ∼ra/publik/lab4/aa03.cge21 . Du kan t ex anv¨nda more-kommandot s˚ h¨r
                                                         a                    a a

  more ~ra/publik/lab4/aa03.cge2

         a
Tryck p˚ mellanslag n˚  agra g˚anger och studera filen, du avslutar more genom att trycka p˚ q-   a
tangenten.
           a
    Du m¨rker snabbt att m˚                               o
                              anga av raderna vi nu har b¨rjar med <w n=?> och slutar med </w>
        a                                                                     a
vilket s¨ger att mellan dessa taggar finns ett ord och dess analys. Tittar vi n¨rmare ser vi att varje
rad verkar ha formatet

   <w n=?>ORD <ana><ps>ORDKLASS <m>MORFOSYNTAKTISK INFO <b>GRUNDFORM </w>

  a       a                    a         o                            o
D¨r ORD ¨r ett ord; ORDKLASS ¨r en kod f¨r vilken ordklass ordet tillh¨r; MORFOSYNTAKTISK INFO
¨r ytterliggare koder f¨r information som t ex inneh˚
a                      o                            aller information om ordets genus, numerus,
    a
best¨mdhet och kasus mm mm; slutligen GRUNDFORM som ¨r n˚    a agon grundform som ordet har.
Studera filen ∼ra/publik/lab4/tagset.txt f¨r att ta reda p˚ vad de olika koderna f¨r ORDKLASS
                                              o               a                     o
                                                    o           ar     a     o
och MORFOSYNTAKTISK INFO betyder. Ur manualen f¨r suc-2.0 f˚ du ¨ven f¨ljande information

     <w> is the SGML-tag used for words in suc, <ana> stands for analysis, <ps> for part-
     of-speech, <m> for morphosyntactic information and <b> for base form.

     an                                    a
Utifr˚ vad du nu vet om hur suc-filerna ¨r strukturerade – konstruera ett perl-program som
                                                                         aller ord och skriver
tar suc-filer via standard input och filtrerar ut endast de rader som inneh˚
            a
resultatet p˚ standard ut.

    o            o                  a
Du b¨r nu kunna k¨ra ditt program, s¨g att det heter dittprogram.perl, med

  cat ~ra/publik/lab4/*.cge2 | ./dittprogram.perl

  o                     a
Ut¨ka dittprogram.perl s˚ att det transformerar alla ord-rader till formatet

   ORD ORDKLASS MORFOSYNTAKTISK INFO

             a
T ex kan vi f˚

   presidenter NN UTR PLU IND NOM

                                   an      o                        a
som en av raderna i resultatet fr˚ en k¨rning. Skriv ut resultatet p˚ en fil genom att omdi-
                                     a
rigera standard out till en fil med hj¨lp av >-tecknet.

  1 Samtliga        a                  a                      a
               filer ¨r kortare utdrag h¨mtade ur Stockholm-Ume˚ Corpus, suc, version 2.0.



                                                       1
I biblioteket ∼ra/publik/perl/ finns ett antal perl-program, kopiera filen exempel.perl till ditt
                                                     a                         a
hembibliotek och studera det. Modifiera programmet s˚ att det kan ta indata av p˚ formatet som
                                         o    a
dittprogram.perl ovan producerar, och ¨vers¨tta dess ordklass och morfosyntaktiska tagg till
motsvarande parole-tagg.

Studera de andra perl-programmen i biblioteket ∼ra/publik/perl/. . . :)




                                              2

								
To top