Kapitel 9. Reguljära uttryck. 9.1 Ett tecken:. [ ] [^ ] 9.2 Ankring: ^ $ \< \> 9.3 Bakstreck: \
|
|
- Daniel Ekström
- för 8 år sedan
- Visningar:
Transkript
1 Kapitel 9 Reguljära uttryck I kapitel 5 togs reguljära uttryck upp som argument till grep. I detta kapitel lär vi oss mer om sådana och om några andra sammanhang där de används. 9.1 Ett tecken:. [ ] [^ ]. = ett godtyckligt tecken [abc] = något av tecknen a, b eller c [^abc] = ett tecken som inte är a, b eller c Inom hakparenteser kan - användas mellan två tecken för intervall. Så [0-9] betyder 0, 1, 2, 3, 4, 5, 6, 7, 8 eller 9, och [0-9,.] betyder 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, komma eller punkt. De flesta tecken som är speciella annars i regexpar är inte speciella inom []. T. ex. matchar [9.*] en nia eller en punkt eller en asterisk. (Utanför hakparenteserna hade båda punkten och asterisken haft en särskild betydelse.) Dessutom kan man inom [] stoppa in en beteckning för en hel klass tecken, som betyder t. ex.»en bokstav«eller»ett skiljetecken«. Dessa teckenklasser har namn som börjar med [: och slutar med :], t. ex. [:lower:] för en gemen bokstav. Tabell 9.1 visar några av dessa. Traditionellt har man skrivit t. ex. [A-Z] för att få en versal, och detta (och [a-z] och [A-Za-z]) kan man se på många håll i exempel på reguljära Tabell 9.1: Några namngivna teckenklasser. Betydelserna är inte helt strikta här, utan kan variera med olika locale. Namn [:alnum:] [:alpha:] [:blank:] [:cntrl:] [:digit:] [:graph:] [:lower:] [:print:] [:punct:] [:upper:] Betydelse Alfanumeriska: [:alpha:] + [:digit:] Bokstäver: [:lower:] + [:upper:] Blanka tecken (mellanrum och TAB) Kontrolltecken Siffror Grafiska: [:alnum:] + [:punct:] Gemena (små) bokstäver Skrivbara: [:graph:] + mellanrum Interpunktion Versala (STORA) bokstäver uttryck. Det är dock säkrare att använda namngivna klasser. Då ska man få man med alla bokstäver, även t. ex. åäö, oavsett språkinställningar. 1 Observera att hakparenteserna ingår i namnen på dessa teckenklasser! Det gör att det blir dubbla hakparenteser i de reguljära uttrycken. Om man byter ut A-Z mot [:upper:] så betyder det att ett reguljärt uttryck som [A-Z] istället blir [[:upper:]], medan [^A-Z] blir [^[:upper:]], och uttrycket [z[:punct:] ] betyder ett z eller ett interpunktionstecken eller ett mellanslag. 9.2 Ankring: ^ $ \< \> Metatecknen ^ och $ för början av raden respektive slutet av raden har vi redan sett. Så med t. ex. ^xyz hittar man rader som börjar med xyz (radbörjan följt av»xyz«) och med [[:blank:]]$ hittar man rader som slutar med något blankt tecken. Dessa båda tecken matchar alltså inget tecken alls på egen hand, utan ställer bara krav på var det övriga i uttrycket ska befinna sig. Man säger att dessa ankrar ett reguljärt uttryck. Med \< respektive \> matchar man en ordbörjan respektive ett ordslut. Så med \<anti hittar man»anti«som står i början av ett ord (t. ex.»anti«i»antites«eller»antilop«men inte i»fantisera«). 9.3 Bakstreck: \ Bakstrecket betyder nånting tillsammans med det tecken som följer direkt efter det. I synnerhet kan man sätta ett metatecken efter bakstreck när man verkligen vill söka efter det tecknet. Så för att söka efter t. ex. en siffra mellan asterisker, som t. ex.»*3*«kan man använda det reguljära uttrycket \*[0-9]\* med bakstreck för att visa att det verkligen ska vara med asterisker i texten. 1 Skriv inte [a-ö] när du menar en bokstav! Dels skulle det vara beroende av en viss sorteringsordning, och dessutom funkar det ändå inte som man skulle kunna tro. 83
2 9. REGULJÄRA UTTRYCK I övrigt används bakstreck följt av annat tecken för lite olika funktioner. Under ankring ovan nämndes två. En annan användbar är \w där»w«står för»word«. Det betyder liksom [[:alnum:]] ett alfanumeriskt tecken, men är kortare att skriva. Så a\wa matchar t. ex.»axa«och»a7a«, men inte»a!a«eller»a a«. 9.4 Utökade reguljära uttryck Det finns olika varianter av reguljära uttryck med lite olika uppsättningar metatecken. Hittills har vi sett enkla reguljära uttryck (basic regular expressions) där de speciella tecknen är. * ^ $ [ ] \ Alla andra tecken matchar bara sig själva. Med så kallade utökade reguljära uttryck (extended regular expressions) tillkommer dessa speciella tecken: +? ( ) { } Kommandot grep använder normalt de enkla (basic) regexparna, men med en väljare -E (som i Extended) använder den de utökade. 9.5 Repetitioner: * +? {} Asterisken har vi sett förut. Nytt i de utökade regexparna är + efter något för att säga att detta något ska förekomma en eller flera gånger. Det utökade reguljära uttrycket bä+ matchar därmed strängarna»bä«,»bää«,»bäää«,»bääää«, osv., hur långt som helst. (Observera att det bara är ä som repeteras. Detta reguljära uttryck matchar t. ex. inte»bäbäbä«.) Skillnaden med asterisken * är att den även tilllåter att den repeterade delen inte är med någon gång alls. Så bä* matchar samma texter som bä+, men dessutom även»b«. Med? efter något anger man ett det är frivilligt, dvs. det kan vara med en gång eller inte alls. Så bä? matchar»b«och»bä«och inget annat. Med {n} efter något kan man säga att detta något ska förekomma n gånger. Så [sz]{3} matchar samma som [sz][sz][sz], dvs.»sss«,»ssz«,»szs«,»szz«,»zss«,»zsz«,»zzs«och»zzz«. Med {n,m} ska det vara minst n och högst m förekomster, så br{2,5} matchar»brr«,»brrr«,»brrrr«och»brrrrr«, och inget annat. Maxantalet m kan utelämnas, och 8{3,} betyder minst tre åttor, dvs.»888«eller»8888«eller»88888«eller... (Hur många som helst.) Om inte det som står före det som visar repetition är något inom [] eller () (som vi kommer till snart!) så är det ett ensamt tecken som repeteras. Så hej?hopp matchar»hejhopp«eller»hej hopp«. 9.6 Alternativ: Med lodstreck ( ) visar man alternativ. Så vit svart grå matchar»vit«eller»svart«eller»grå«och foo b[aä]r matchar»foo«eller»bar«eller»bär«(eftersom alternativet efter lodstrecket hade två varianter). Glöm inte att hakparenteser kan användas om alla alternativ består av ett tecken, så istället för a e i o u är det enklare att skriva [aeiou] Parenteser: ( ) Med parenteser kan man föra samman ett större uttryck. Så med en (grå liten stor) katt matchar man»en grå liten katt«eller»en stor katt«. Utan parenteser skulle det bli allt före eller efter lodstrecket. Parenteser är också användbara för att hålla ihop något som ska repeteras. Det gör t. ex. att (bar){2,5} matchar»barbar«,»barbarbar«,»barbarbarbar«och»barbarbarbarbar«. Fler exempel: en (grön blå)+ kavaj matchar t. ex.»en grön kavaj«eller»en blågrön kavaj«eller»en gröngrön kavaj«eller»en blåblågrönblågrön kavaj«. en grön blå+ kavaj vore däremot något helt annat! Det skulle matcha antingen»en grön«eller också något som matchas av blå+ kavaj, dvs.»blå kavaj«eller»blåå kavaj«eller»blååå kavaj«osv. mo(no)+ton matchar»monoton«,»mononoton«,»monononoton«, osv. 9.7 Exempel Här är några ytterligare exempel på (utökade) reguljära uttryck [a-h][1-8] en ruta på ett schackbräde, som»e2«eller»b4«. [0-9]*[13579] en sekvens med siffror som slutar med en udda siffra, som t. ex.»4711«eller»007«. (fjor fem sex sjut ar nit)ton tjugo något av orden fr. o. m.»fjorton«t. o. m.»tjugo«(..)* ett jämnt antal tecken, vilka som helst \<pre\w*ing\> ett ord som börjar med»pre«och slutar med»ing«. 9.8 Olika sorters reguljära uttryck Reguljära uttryck används inte bara av grep utan dyker upp i flera sammanhang. Av historiska skäl används dock tyvärr flera olika varianter av reguljära uttryck. Ibland används de utökade (som 84
3 Girighet och hunger grep -E använder), ibland de enkla (som grep använder normalt) där tecknen +? ( ) { } inte har någon särskild betydelse, utan betyder sig själva. (En del program som använder reguljära uttryck har dessutom sina egna utökningar av dem. Det har t. ex. Emacs och programspråket Perl. Flera utökningar som har gjorts för Perl har plockats över till andra sammanhang också, t. ex. programspråken Java och Python.) I grep så kan man komma åt all funktionalitet som man kan få med +? ( ) { } utan att gå över till utökade reguljära uttryck genom att skriva \+ \? \( \) \{ \} \ istället. Så dessa två kommandon gör samma sak: Med väljaren -o ändras detta och man får istället ut just de delar som matchade sökuttrycket istället för hela rader. $ grep l.ll verb.txt lalla lulla parallellställa parallellisera $ grep -o l.ll verb.txt lall lull lell lell $ grep -E '^(tre fyr fem)' verb.txt trefaldiga femfaldiga fyrfaldiga tredubbla fyrdubbla tremulera trepanera fyra treva $ grep '^\(tre\ fyr\ fem\)' verb.txt [ samma svar ] nämligen hittar de rader i den filen som börjar med»tre«,»fyr«eller»fem«. 9.9 Reguljära uttryck i Emacs Det finns flera kommandon i Emacs som använder reguljära uttryck. Vid sidan av C-s och C-r som söker framåt respektive bakåt efter en textsträng så finns även C-M-s och C-M-r som söker framåt respektive bakåt efter ett reguljärt uttryck. (Här ska alltså både Control och Meta användas tillsammans.) Under en inkrementell sökning kan man också använda M-r för att slå om huruvida sökningen ska gälla reguljära uttryck eller inte. Det finns även andra kommandon som ni kommer att möta i labben. De reguljära uttrycken i Emacs är ungefär som enkla reguljära uttryck, men även plustecknet och frågetecknet är metatecken grep -o Kommandot grep arbetar som många andra kommandon normalt med rader. Den fungerar som ett filter som bara släpper igenom de rader som innehåller ett visst sökuttryck. (Eller med väljaren -v de rader som inte innehåller ett visst sökuttryck.) Se sökningarna i figur 9.1 där vi söker efter ord som börjar på»f«. Utan -o spelar det ingen roll om vi söker efter \<f\w* eller bara \<f. Det är samma rader (i detta fall bara en rad) som hittas. Men med \w* på slutet hittas hela ordet, vilket gör skillnad när vi använder -o för att få se vilken del av texten som matchade sökuttrycket. Det kan (som här) bli flera matchningar per rad Girighet och hunger Ett sådant uttryck som [1-9]0* matchar ju en siffra 1 9 eventuellt följt av nollor, t. ex.»5«,»10«eller»30000«. $ echo 'Timmy 2000' grep -o '[1-9]0*' 2000 I exemplet ovan ser vi hur uttrycket matchade»2000«. Men det skulle ju också kunna ha matchat bara»200«eller»20«eller»2«. Ändå är det just matchningen»2000«som vi fick fram. Vid matchningen väljs nämligen den längsta av flera möjligheter som börjar på samma plats. Man säger att operatorn * här är girig eller hungrig (greedy på engelska) vilket innebär att den»vill«matcha så mycket som möjligt. Samma gäller de andra repetitionsoperatorerna vi har tagit upp. Detta behöver man tänka på ibland, i synnerhet med.* eller.+ som lätt kan matcha mer än man egentligen hade tänkt sig. Om man t. ex. vill söka efter citat inom»«kan det ligga nära till hands att använda ett reguljärt uttryck».*«för att visa att det ska börja med», sluta med «och däremellan får innehålla vad som helst. Men»vad som helst«kan bli mer än man tänkt sig: 85
4 9. REGULJÄRA UTTRYCK $ grep '\<f' saga.txt ingenting, för han var försäkrad. Några dagar senare flyttade $ grep -o '\<f' saga.txt f f f $ grep '\<f\w*' saga.txt ingenting, för han var försäkrad. Några dagar senare flyttade $ grep -o '\<f\w*' saga.txt för försäkrad flyttade Figur 9.1: Greppande med och utan -o i en saga. \<f betyder ett f i början av ett ord, och \w* betyder godtyckligt många ytterligare»ordtecken«efter det, så tillsammans betyder det ett ord som börjar på f. $ cat testfil Hej hopp! Ska det stå»i dag«eller»idag«? $ grep -o '».*«' testfil»i dag«eller»idag«detta svar börjar ju och slutar med de efterfrågade tecknen, men är längre än bara»i dag«som man kanske snarare var ute efter. I detta fall är ett sätt att lösa problemet att kräva att tecknen mellan de båda citattecknen inte själva får vara slutcitattecken, dvs. att använda [^«] istället för. för varje tecken mellan citattecknen. $ grep -o '»[^«]*«' testfil»i dagidag«9.12 sed Med kommandot sed kan man göra en mängd olika omvandlingar av text. Namnet står för stream ed och sed: Den ursprungliga editorn på Unix, som användes redan i forntiden före bildskärmarnas tid, hette ed och var skriven av Ken Thompson. Det var Thompson som först introducerade reguljära uttryck i editorer. När kommandot sed kom några år senare som en variant att använda för icke-interaktiv editering av en inputström så byggde därför dess kommandon på motsvarande kommandon i ed. Det enda sed-kommando vi tar upp här, s, finns t. ex. även i ed. editor. Det kan göra mycket som en editor kan göra, men gör det inte interaktivt utan genom att bearbeta text som kommer in i en inputström. Detta kan läggas in som ett avancerat filter som läser text från standard input och skriver ut en editerad version av texten på standard output. Kommandot sed är lite som en schweizisk armékniv som kan utföra en mängd olika saker, bland annat sådant som ni har använt andra kommandon till, som head, tail och tr. Här kommer vi dock att bara använda detta kraftfulla verktyg till en specifik sak, nämligen att byta ut text Att ersätta text med sed Tidigare har vi använt tr för att byta ut text, men det är begränsat genom att det bara är enstaka tecken som hanteras. Det duger inte om vi t. ex. vill byta ut alla förekomster av»foo«mot»bar«. Dessutom har det begränsningar vid hantering av flerbytestecken. Eftersom ni nu bara kommer att använda sed till en sak så kommer alla era anrop av sed att likna varandra. De kommer alla att se ut ungefär som Varför heter det grep?: I editorn ed användes reguljära uttryck inte bara med kommandot s, utan även med bl. a. ett kommando g med vilket man sökte upp rader som matchade ett visst reguljärt uttryck och gjorde nåt med dessa rader. För att ta bort alla rader som innehåller»foo«kunde man t. ex. göra g/foo/d där d är ett kommando som tar bort en rad. För att skriva ut alla rader som matchade ett reguljärt uttryck använde man istället p (= print). Ibland förkortas regular expression med re, så en sådan operation kunde beskrivas g/re/p vilket är skälet till att det senare skrivna program som utförde just den operationen fick namnet grep. 86
5 sed sed 's/regexp/replacement/g' Här är det bara ett argument till sed, och det talar om vilken editering som ska utföras. Det s som argumentet börjar med här är ett kommando i sed för substitute. Det söker upp förekomster av text som matchar det reguljära uttrycket regexp och byter ut dessa mot texten replacement. Så t. ex. kan man skriva sed 's/color/colour/g' för att byta ut alla»color«mot»colour«. 2 eller Att återanvända originaltexten I sed 's/regexp/replacement/g' är det bara regexp som är ett reguljärt uttryck. I ersättningsdelen har inte asterisker, parenteser osv. någon särskild betydelse, utan blir sig själva. $ echo 'byt allt' sed 's/././g'... $ echo 'foo bar' sed 's/[aou]/[äöü]/g' f[äöü][äöü] b[äöü]r $ echo 'hej hopp' sed 's/e.*o/***/g' h***pp sed 's/s\>/z/g' för att byta ut varje s som står i slutet av ett ord mot z. Man brukar normalt använda snedstreck (/) som här för att avdela argumentet, men det kan vara något annat tecken istället, bara det är samma tecken på alla tre ställen. Så om man behöver snedstreck i sitt reguljära uttryck eller i ersättningen får man lov att välja nåt annat, t. ex. sed 's!1/2!½!g' för att byta alla förekomster av de tre tecknen»1/2«mot det enda tecknet»½«. Efter det sista snedstrecket står väljare till s- kommandot. I exemplen ovan är det g som gör att alla förekomster byts ut (global). Annars byts bara den första förekomsten på varje rad ut. En annan väljare är i som ignorerar skillnader mellan versaler och gemener. Jämför följande fyra exempel som bara skiljer sig i vilka av dessa väljare som har använts. Om man ger ett andra argument till sed så är det vilken fil den ska hämta input från. Ett tecken som ändå är speciellt i ersättningstexten är & (ampersand) som betyder hela den text som matchade det reguljära uttrycket. Om man vill bryta raden efter varje interpunktionstecken kan man därför göra sed 's/[[:punct:]]/&\n/g' där ersättningsdelen betyder det som [[:punct:]] matchade följt av ett nyradstecken (vilket skrivs \n här precis som t. ex. i tr). Följande exempel dubblerar vokaler genom att använda ampersand två gånger. sed 's/[aeiouyåäö]/&&/gi' $ cat jaha.txt Procent procent procent PROCENT $ sed 's/procent/%/' jaha.txt Procent % procent PROCENT $ sed 's/procent/%/g' jaha.txt Procent % % PROCENT $ sed 's/procent/%/i' jaha.txt % procent procent PROCENT $ sed 's/procent/%/gi' jaha.txt % % % % Kommandot sed använder normalt enkla reguljära uttryck, men har en väljare -r som gör att den istället använder utökade reguljära uttryck. 2 I detta fall behövdes inte några citattecken runt argumentet till sed, eftersom inga tecken där är speciella i skalet, men oftast behövs det, så det kan vara säkrast att alltid ha med det. 87
6 Laboration 9: Reguljära uttryck Redovisning Checka in en fil ids9.txt med svar på frågorna senast fredag 25 november. När frågan är i stil med»vilka ord finns det som...?«så ge dels svar på frågan och tala dels om hur du fick fram svaret, t. ex. vilket kommando eller vilka kommandon du använt för att få fram svaret. Svenska ord I /local/dict/dsso-list.txt finns en stor samling svenska ordformer tagna från Den stora svenska ordlistan. Använd den för frågorna i detta avsnitt. Eftersom filen bara innehåller ord med ett ord per rad kan du använda ^ och $ för ankring till ordbörjan och ordslut och. för ett godtyckligt tecken inne i ordet. Uppgift 9.1 Hur många ord finns det som slutar på bokstaven v? Uppgift 9.2 Vad finns det för ord som innehåller minst tre ä, som t. ex.»självbestämmanderätt«? Uppgift 9.3 Vilka ord med minst nio bokstäver går att skriva enbart med tecknen på översta bokstavsraden på tangentbordet? (qwertyuiopå) Uppgift 9.4 Vad finns det för ord som är minst 12 tecken långa vars enda vokal är o? Uppgift 9.5 Du löser korsord och söker ett elvabokstavsord som har å näst sist och f eller l på femte plats. Vad finns det för möjligheter (om ordet står med i denna ordlista)? Uppgift 9.6 Vilka ord med minst fem tecken har inte med någon av bokstäverna eantrsildogm? (De vanligaste tecknen på svenska enligt någon källa.) Uppgift 9.7 En del ord i den filen innehåller tecken som inte räknas som ingående i teckenklassen [:alpha:]. Hur många ord? Väljaren -o I dessa uppgifter ska du använda väljaren -o för att bara få ut det som matchar ett uttryck från en fil. Uppgift 9.8 Vilka tecken var det som fanns med i ordlistan trots att de inte ingår i teckenklassen [:alpha:] i förra uppgiften Uppgift 9.9 Vilka ord i /local/kurs/ids/ wonderland.txt börjar med»cal«? (Rensa bort dubbletter från ditt svar.) Uppgift 9.10 Vad finns det för ord som börjar med versal och slutar med k i samma fil? Använd \w för att beteckna ett tecken inne i ett ord, och rensa bort dubbletter från ditt svar. Uppgift 9.11 Vad finns det för ord som innehåller q i samma fil? (Rensa bort dubbletter från ditt svar.) Uppgift 9.12 Använd det utökade reguljära uttrycket [0-9]+ för att ta fram vilka sifferuttryck som finns i filen /local/kurs/ids/ THE-GNU-PROJECT och sortera dem i nummerordning. (Rensa bort dubbletter från ditt svar.) Uppgift 9.13 Skapa en fil gnuord-3 som listar alla ord i filen GNU. Använd denna gång grep -o med lämpliga argument för att plocka ut orden och rensa bort dubbletter. På vilka sätt blev denna ordlista bättre än den gnuord-1 som du skapade i uppgift 5.59 (s. 58)? En sluttagg i HTML börjar ju med»</«och slutar med»>«. Prova därför med grep -o '</.*>' ~ellen/public_html/saga.html för att ta fram sluttaggar från denna HTML-fil. Uppgift 9.14 En del rader i svaret blev verkligen sådana, t. ex.»</head>«, men andra rader kom att innehålla mer. Vad är problemet? Hur kan du fixa det? Ge ett sorterad lista (utan dubbletter) med alla sluttaggar som förekommer i den filen. Ta sed dit man kommer Uppgift 9.15 Stavningsreform! Skriv ett sedkommando som byter ut alla»ck«mot»kk«. Du kan prova ditt kommando med t. ex. ditt kommando ck-test.txt där ck-test.txt är en fil som du gjort med lite testord, eller typ echo sicksack ditt kommando. 88
7 I Emacs Uppgift 9.16 Hur lyder din saga på i-sprikit (även kallat i-språket), dvs. med alla vokaler utbytta mot i. Svaret ska börja»dit vir in ging«. Uppgift 9.17 Hur lyder din saga om alla mellanslag byts ut mot dubbla mellanslag? Svaret ska alltså börja Det var en gång. Uppgift 9.18 Om Strindberg hade behövt skriva Roeda rummet på en engelsk skrivmaskin och fått lov att skriva aa ae oe istället för å ä ö, hur hade då början av den lydit? Uppgift 9.19 Skriv ett kommando som byter ut alla ord»ej«mot»icke«i en text. Se till att du bara byter ut hela ord så att du inte råkar byta t. ex.»mejl«mot»mickel«. Uppgift 9.20 Skapa en fil GNU2 i din ids-katalog som är som GNU, men där du lagt till»<abbr>«före och»</abbr>«efter varje ord som är minst två bokstäver långt och som bara består av versaler. Så t. ex. ska varje förekomst av ordet»mit«ha bytts mot»<abbr>mit</abbr>«. Uppror! (igen) Dessa uppgifter använder sig av den uppror.txt som du har sedan tidigare. Använd teckenklasser när det är lämpligt. Uppgift 9.21 Vilka rader innehåller en liten bokstav som följs direkt av en stor? Uppgift 9.22 Hur många rader innehåller minst tre interpunktionstecken i rad? Vilka rader har minst sex konso- Uppgift 9.23 nanter i rad? Uppgift 9.24 Vilka rader innehåller något av orden mitt, ditt, sitt, hans, hennes följt av ett mellanslag och sedan ordet liv? Uppgift 9.25 y? Uppgift 9.26 Vilka rader börjar med bokstaven Vilka rader börjar med ordet kan? Uppgift 9.27 Vilka rader både börjar och slutar med bokstaven m? Uppgift 9.28 Vilka rader både börjar och slutar med bokstaven m, men har inga ytterligare m i sig? Uppgift 9.29 Vilka rader innehåller exakt ett w? Uppgift 9.30 med»flä«? Uppgift 9.31 tecken långa? Vilka rader har med ord som börjar Hur många rader är minst femtio Uppgift 9.32 Gör en frekvenslista över vilka interpunktionstecken som förekommer, sorterade i frekvensordning. Texten i denna bok är inlagd med OCR (Optical Character Recognition) och det kan mycket väl ha blivit fel. I listan över med interpunktion ser du att det finns två streck, bindestreck (-) och ett längre streck ( ) och jag är misstänksam angående hur det kortare bindestrecket används i filen. Uppgift 9.33 Vad finns det för rader som innehåller ett bindestreck omgivet av tecken före och efter det som varken är ett annat bindestreck eller ett [:alnum:]-tecken? Du bör hitta en del konstigheter i filen här. Uppgift 9.34 uppror.txt? På en rad står det t. ex. Vad finns det för parentesuttryck i försvar (och anfall) för att bevara den bästa av Alltså ska (och anfall) ingå i ditt svar. En del parenteser börjar på en rad och slutar på en annan. Dem kan du för enkelhets skull strunta i. (Men har du några idéer om hur du skulle kunna ta hand om det också, så berätta gärna!) I Emacs Öppna filen /local/kurs/ids/wonderland.txt i Emacs. Det finns ett Emacs-kommando som heter occur som listar de rader som innehåller text som matchar ett visst reguljärt uttryck. Detta kommando finns dock inte i menyerna, så använd M-x för att köra det kommandot. Du får sen skriva ett ett reguljärt uttryck. Skriv uet\> för att lista rader som innehåller ord som slutar på»uet«. Uppgift 9.35 Hur många matchingar blev det och hur visas dessa? Sökträffarna visas i en buffert som är i ett särskilt Emacsläge där man kan gå direkt till en träff genom att klicka på den, eller genom att trycka på RET. Uppgift 9.36 När man ger ett kommando med M-x i Emacs får man ett tips i ekoarean om hur man också hade kunnat ge kommandot om det finns ett kortkommando för det. Med vilka tangenttryckningar kan man också ge kommandot occur? Använd nu Tools Search Files (Grep) i samma Emacs. I minibufferten får du ett påbörjat grepkommando. Lägg till gren *.txt till det för att leta efter»gren«i alla filer *.txt i den katalogen (/local/kurs/ids). Här kan du på ett liknande sätt använda musklick eller RET för att gå till sökträffarna. 89
8 LABORATION 9: REGULJÄRA UTTRYCK Uppgift 9.37 En av de väljare som användes till grep-kommandot här var -n. Den har vi inte använt i kursen. Vad betyder den? Uppgift 9.38 En av träffarna är från filen nordic-authors.txt. Vilken författare var det som hittades där? Upproriska ord Låt oss se vad det finns för ord romanen Uppror!. För att slippa ifrån sifferuttryck och konstiga egennamn som»fitzschkloff«och»knöckl«så nöjer vi oss med ord som bara består av små bokstäver. Uppgift 9.39 Skapa en fil uppror-ord.txt med en svensksorterad ordlista (utan dubbletter) över ord med bara små bokstäver i uppror.txt. Uppgift 9.40 Hur många ord finns i uppror-ord.txt? Hur många av dessa finns även i dsso-list.txt? Spara de ord som finns i båda dessa filer i uppror-ord-ok.txt. (Också den svensksorterad och utan dubbletter.) Ett sätt att få fram de rader som finns i två filer är att sortera ihop filerna och plocka fram de rader som det finns dubbletter av då. De övriga orden är kanske intressantare. En del är udda sammansättningar (som»zombifieringsmaskineri«) som man knappast väntar sig i en ordlista, men en del av dessa skulle kunna vara fel i uppror.txt. Och en del skulle kunna vara ord som borde stå med i DSSO men saknas där. Kommandot diff visar skillnader mellan två filer. Använd diff uppror-ord.txt uppror-ord-ok.txt för att i kompakt form få se alla skillnader mellan filerna. Det blir rader som börjar med»<«som visar det som bara finns i den första filen. (Raderna med siffror är för att visa var i filen det är.) Uppgift 9.41 Ge något exempel på ord där som tyder på en brist på DSSO-listan något som gott borde ha funnits med i en svensk ordlista. Kolla på om ordet finns i den allra senaste versionen av DSSO. Gör det det? Mer( mer)+ Det finns många varianter på hur man stavar Gaddafi med latinskt alfabet. Ett förslag på ett utökat reguljärt uttryck att använda för att söka efter hans namn är \<[KGQ]h?add?h?af?fi\>. Uppgift 9.42 Hur många olika möjligheter matchar detta reguljära uttryck? Uppgift 9.43 Vilka tecken är metatecken i enkla reguljära uttryck? Uppgift 9.44 Hur lyder din saga.txt om man tar bort alla vokaler? (Svaret ska alltså börja»dt vr n gng«.) Uppgift 9.45 Hur lyder din saga.txt om alla bokstäver dubbleras? (Svaret ska alltså börja»ddeett vvaarr eenn ggåånngg«. Bara bokstäverna är dubblerade, men inte mellanslag eller interpunktion.) Uppgift 9.46 Hur lyder din saga.txt om sista bokstaven i varje ord tas bort? (Svaret ska alltså börja»de va e gån«.) Uppgift 9.47 Hur lyder din saga.txt om alla versaler sätts inom hakparenteser? (Svaret ska alltså börja»[d]et var en gång«.) Uppgift 9.48 Hur lyder din saga.txt översatt till rövarspråket som blivit känt från Astrid Lindgrens böcker om Kalle Blomkvist där varje konsonant byts ut mot konsonanten + o + konsonanten. (Svaret ska alltså börja»dodetot vovaror enon gogånongog«.) (Ännu bättre vore det egentligen med»dodetot«där bara det första d-et är versalt. Mycket frivillig överkurs.) Uppgift 9.49 Ge ett reguljärt uttryck som matchar något av 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 osv. till hur höga tal som helst, men inget annat (t. ex. inte 007). Uppgift 9.50 Ge ett kort utökat reguljärt uttryck som matchar både»arton«och»aderton«(men inget annat). En möjlighet är helt enkelt arton aderton, men gör något kortare! Uppgift 9.51 Ge ett utökat reguljärt uttryck som matchar»mormor«,»morfar«,»farmor«och»farfar«(men inget annat). Här är mormor morfar farmor farfar förstås en möjlighet, men försök att skriva något kortare! Uppgift 9.52 Ta med grep -Eo och lämpliga argument fram telefonnummer med riktnummer från tidningstexterna i /local/kurs/ids/ ivt2-svenska.txt. Din lösning kan vara mer eller mindre bra. Ju fler korrekta nummer du får ut desto bättre, men undvik att få falska träffar med sånt som inte är telefonnummer. 90
Kapitel 8. Reguljära uttryck. 8.1 Ett tecken:. [ ] [^ ] 8.2 Ankring: ^ $ \< \>
Kapitel 8 Reguljära uttryck I kapitel 5 togs reguljära uttryck upp som argument till grep. I detta kapitel lär vi oss mer om sådana och om några andra sammanhang där de används. 8.1 Ett tecken:. [ ] [^
Reguljära uttryck. Kapitel Reguljära uttryck. 8.2 Metatecken Ett tecken:. []
Kapitel 8 Reguljära uttryck I kapitel 6 togs reguljära uttryck upp som argument till grep. I detta kapitel lär vi oss mer om sådana och om några andra sammanhang där de används. 8.1 Reguljära uttryck På
Reguljära uttryck. Kapitel Reguljära uttryck Ett godtyckligt tecken: Ett speciellt tecken: [ ] 8.1.
Kapitel 8 Reguljära uttryck I kapitel 6 togs flera kommandon för texthantering upp. I detta tillkommer ett viktigt begrepp för texthantering reguljära uttryck. 8.1 Reguljära uttryck Vi har tidigare använt
Program. Kapitel make Program Interpreterande och kompilerande program
Kapitel 11 Program Detta kapitel är som synes mycket kort och nämner inte allt från föreläsningen. 11.1 Program Ett datorprogram är en samling instruktioner som beskriver något som en dator ska utföra.
Textbearbetning i skalet och man-sidor
Kapitel 5 Textbearbetning i skalet och man-sidor Vi har redan använt skalkommandon för att göra saker textfiler. Här kommer gomgång av sådana kommandon som vi redan använt, några nya varianter, samt ett
Kapitel 12. Mer om program. 12.1 Att rapportera buggar och problem. 12.2 make
Kapitel 12 Mer om program 12.1 Att rapportera buggar och problem När man rapporterar buggar eller andra problem i program så är det några saker att tänka på för att ens rapport ska vara användbar för den
TDDD02 Föreläsning 2 HT-2013. Reguljära uttryck och reguljära språk Lars Ahrenberg
TDDD02 Föreläsning 2 HT-2013 Reguljära uttryck och reguljära språk Lars Ahrenberg Översikt Reguljära uttryck sökproblem i texter definitioner och exempel UNIX-funktionen grep Reguljära transformationer
Reguljära uttryck och textbehandling II
Kapitel 10 Reguljära uttryck och textbehandling II Detta är en fortsättning från kapitel 8 där reguljära uttryck och kommandot egrep introducerades. 10.1 Olika sorters reguljära uttryck Reguljära uttryck
[:alnum:] [:alpha:] [:blank:] [:cntrl:] [:digit:] [:graph:] [:lower:] [:print:] [:punct:] [:upper:] 8.2 Ankring: ^ $ \< \>
Kapitel 8 Reguljära uttryck I kapitel 6 togs reguljära uttryck upp som argument till grep. I detta kapitel lär vi oss mer om sådana och om några andra sammanhang där de används. På engelska heter det regular
Ersätta text, specialtecken och formatering
11 Ersätta text, specialtecken och formatering Möjligheten att söka igenom dokumentet och byta ut tecken, ord, textstycken, formatering, specialtecken (t.ex. sidbrytning) och annat är faktiskt mycket mer
Laboration 10: LaTeX. Redovisning. Omgivningen document. Början. Instruktionerna nedan. Repetitionsuppgifter
Laboration 10: LaTeX Redovisning Instruktionerna nedan Dessa labbinstruktioner är av den pratiga sorten. Du får ganska detaljerade instruktioner som du får följa steg för steg och där de fåtaliga frågorna
Omkoppling av in- och utmatning. In- och utmatning i Unix. Kommando exempel, ls, pipe forts. Kommando exempel, ls, pipe
In- och utmatning i Unix Program i Unix skriver och läser till och från filer. En fil betyder här en vanlig fil med text eller binära data, ett tangentbord, en skärm, ett annat program etc. Innan ett program
Labb 1 - Textbearbetning med reguljära uttryck. Formella språk. Definitioner. Chomskyhierarkin. Formella språk. Formella språk
Labb 1 - Textbearbetning med reguljära uttryck Textbearbetning: Dela upp en text i meningar Hitta alla namn i en text Hitta adjektiv i superlativ Lektion reguljära uttryck re modulen i Python Formella
awk, sed och grep awk döpt efter Aho Weinberger Kernighan (1977) sed en stream editor grep sed g/re/p bygger i viss mån på ed line editor
C&UNIX awk, sed och grep 1 awk, sed och grep awk döpt efter Aho Weinberger Kernighan (1977) sed en stream editor grep sed g/re/p bygger i viss mån på ed line editor C&UNIX ed 2 ed Standard unix editor
Uttryck, satser och strömhantering
Linköpings Universitet Institutionen för datavetenskap (IDA) UPP-gruppen 2018-09-06 Mål Uttryck, satser och strömhantering I denna laboration ska du lära dig Formaterad inläsning och utskrift Vanliga repetitions-
Egna genvägar. Subhashish Pradhan T.C. Hollingsworth Översättare: Stefan Asserhäll
Subhashish Pradhan T.C. Hollingsworth Översättare: Stefan Asserhäll 2 Innehåll 1 Inledning 4 2 Hantera genvägar och grupper 4 2.1 Lägga till grupper...................................... 4 2.2 Lägga till
729G09 Språkvetenskaplig databehandling
729G09 Språkvetenskaplig databehandling Föreläsning 2, 729G09, VT15 Reguljära uttryck Lars Ahrenberg 150409 Plan för föreläsningen Användning av reguljära uttryck Formella språk Reguljära språk Reguljära
Använda Python Laboration 1 GruDat, DD1344
Använda Python Laboration 1 GruDat, DD1344 Örjan Ekeberg 14 oktober 2008 Målsättning Målet med denna laboration är att du ska prova på att använda Python, framförallt interativt. Du ska också lära dig
STRÄNGAR DATATYPEN. Om du vill baka in variabler eller escape-tecken måste du använda dubbla citattecken. strängar
STRÄNGAR En av de mest avancerade av de normala datatyperna är. Här skall vi grundläggande gå igenom hur den datatypen fungerar och vidare flertalet funktioner som hör till datatypen. Låt oss kasta oss
Handbok KFind. Dirk Doerflinger Översättare: Stefan Asserhäll
Dirk Doerflinger Översättare: Stefan Asserhäll 2 Innehåll 1 Inledning 5 1.1 Starta KFind......................................... 5 2 Hitta filer 6 2.1 Fliken Namn och plats...................................
Om e-post. Introduktion till Emacs. Att skicka e-post. ÅÄÖåäö i pine. Varför Emacs? Vad är Emacs? Emacs en editor/textbehandlare
Att skicka e-post Om e-post To, CC, BCC, FCC (File Carbon Copy, eller markera på annat sätt att skickade brev ska sparas) Subject: Ska tala om innehållet, problem med åäö, Skicka inte epost med HTML kod
Introduktion till Matlab
Introduktion till Matlab Inledande matematik, I1, ht10 1 Inledning Detta är en koncis beskrivning av de viktigaste delarna av Matlab. Till en början är det enkla beräkningar och grafik som intresserar
Reguljära uttryck och textbehandling
Kapitel 7 Reguljära uttryck och textbehandling Redan i kapitel 4 togs flera kommandon för textbehandling upp, som echo, head, fmt, sort, tail, tr. uniq och wc. Här kommer mer om sådant, i synnerhet reguljära
729G09 Språkvetenskaplig databehandling
729G09 Språkvetenskaplig databehandling Lektion inför Laboration 1 vt15 Lars Ahrenberg Plan för lektionen Grupperingar Substitutioner Strängfunktioner i Python (kort repetition) Reguljära uttryck i Python
UNIX. Laborations-PM Anders Egneus, Henrik Lindgren, 2004, 2006. Raphael Corsoski, 2005. Erik Eliasson, 2007. Christian von Schultz, 2008.
1 Introduktion UNIX Laborations-PM Anders Egneus, Henrik Lindgren, 2004, 2006. Raphael Corsoski, 2005. Erik Eliasson, 2007. Christian von Schultz, 2008. Det övergripande syftet med dessa laborationer är
Introduktion till datormiljön och Python
Introduktion till datormiljön och Python Nyckelord: katalog, katalogträd, rot, fil, källkod, program, exekvering, tilldelning, inmatning, utmatning. Mål: Att du efter laborationen ska klara dig på egen
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Inledning Starta Microsoft Visual Studio 2005. Välj create Project Välj VB + Vindows Application och välj ett nytt
Att söka i W3D3. Det nya fönster du då får upp ser ut så här.
Att söka i W3D3 En av de viktigaste funktionerna i W3D3 är återsökning av ärenden och dokument. Den här lathunden ska försöka beskriva hur man gör detta. Om du behöver en utförligare eller mer detaljerad
Filers innehåll. Grundläggande databehandling. Representation av text. pffb = påhittat filformat för bilder
Filers innehåll Data av olika slag lagras i filer. file = pärm, mapp, arkiv, akt,... Grundläggande databehandling Filer och skal Per Starbäck 2005-09-12 / Föreläsning 2 texter ljud bilder databaser program...
Användarmanualen. Visma Enterprise Content Search. Standard Version 2.0 for Platina. Version 1.1
Användarmanualen Visma Enterprise Content Search Standard Version 2.0 for Platina Version 1.1 Innehållsförteckning 1 Ändringshistorik... 4 2 Introduktion... 5 2.1 Ikoner... 5 2.1.1 Allmänt... 5 2.1.2 Sökresultat...
awk, sed och grep ed kommandon grep Standard unix editor tidig 70-tal program < 8Kbyte awk döpt efter Aho Weinberger Kernighan (1977)
C&UNIX awk, sed och grep 1 C&UNIX ed 2 ed Standard unix editor awk, sed och grep tidig 70-tal program < 8Kbyte awk döpt efter Aho Weinberger Kernighan (1977) terminal 10 tecken s 1 sed en stream editor
1. Enkel sökning Globalsökning Avancerad sökning Historik Söka via klassificeringsstruktur 14
Ledningskansliet, Juridik och dokumentation Patrik Spånning Westerlund MANUAL 2017-11-16 SLU ID: SLU.ua.2017.2.1.1.IA-9 Manual Sökningar i Public 360 Manual Sökningar i Public 360 Dokumentägare: LK/Dokumentationsenheten/
Programmering för språkteknologer II. OH-serie: Ändliga automater. reguljära uttryck i Java. Deterministiska ändliga automater
Programmering för språkteknologer II OH-serie: ändliga automater reguljära uttryck i Java Mats Dahllöf Ändliga automater Abstrakt maskin, tillståndsmaskin, transitionssystem. (Den enklaste typ man brukar
C++ Lektion Tecken och teckenfält
C++ Lektion Tecken och teckenfält Teori Hittills har alla variabler du jobbat med varit olika typer av tal, men du kan också deklarera variabler som håller bokstavstecken. Denna variabeltyp kallas för
Labb LABB 1. Databassagan och en rundtur i databasers märkliga värld. Plushögskolan Frågeutveckling inom MSSQL - SU14
Labb LABB 1 Databassagan och en rundtur i databasers märkliga värld Plushögskolan Frågeutveckling inom MSSQL - SU14 I Microsoft SQL-Server Management Studio kan man arbeta på olika sätt. Antingen via användargränssnittet
Elias Castegren. (Version 1, 2012)
Liten Emacs-referens Elias Castegren (Version 1, 2012) Det här är en kort genomgång av några väldigt grundläggande kommandon i Emacs. Dokumentet är inte utförligt eller ens särskilt pedagogiskt, utan jag
Manual. Användargränssnitt
Manual Användargränssnitt 0 Innehållsförteckning ANVÄNDARGRÄNSSNITT... 1 1. MENYNAVIGERING... 1 2. BACKA-KNAPP... 2 3. GLOBALA FUNKTIONER... 3 4. PERIOD... 4 Avrundning... 4 5. FLERA FLIKAR SAMTIDIGT...
Mathematica. Utdata är Mathematicas svar på dina kommandon. Här ser vi svaret på kommandot från. , x
Mathematica Första kapitlet kommer att handla om Mathematica det matematiska verktyg, som vi ska lära oss hantera under denna kurs. Indata När du arbetar med Mathematica ger du indata i form av kommandon
Sed och Awk. Linuxadministration II 1DV421. Monday, August 8, 11
Sed och Awk Linuxadministration II 1DV421 Onlinematerial http://www.gnu.org/software/sed/manual/sed.html Manual för GNU sed http://www.gnu.org/software/gawk/gawk.html Manual för GNU awk Historia för sed
Editering, Kompilering och Exekvering av Javaprogram
UMEÅ UNIVERSITET Institutionen för informatik B.1, Programmeringens grunder, 5 poäng Editering, Kompilering och Exekvering av Javaprogram Introduktion Syftet med kursmomentet Programmeringens grunder (B.1)
kl Tentaupplägg
Tentaupplägg TIPS 1: Läs igenom ALLA uppgifterna. Välj den du känner är lättast först. Det kan gärna ta 10-20 minuter. Försök skriva saker som kan vara problem i uppgifterna. Är det något du absolut kommer
Tio vanliga Excel-problem
Tio vanliga Excel-problem Aris Velizelos Linda Larsson Kakuli SVT Nyheter Problem: Tomma rader Du har laddat ner en färdig Excel-fil från t ex SCB men det saknas uppgifter på varannan rad. Du vill ha uppgift
Konsolfönster i Windows Momentet ingår i kursen PDA DTR1206 Lab 1 DOS http://www.cwdata.se Konsolfönstret
Konsolfönster i Windows Momentet ingår i kursen PDA DTR1206 Lab 1 DOS http://www.cwdata.se Konsolfönstret Med ett kommandobaserat gränssnitt menas ett helt textbaserat gränssnitt. Istället för att klicka
Lab 7, 48 steg till ett bättre liv i Unix-labbet
Lab 7, 48 steg till ett bättre liv i Unix-labbet Urban Liljedahl 13 december 2002 Instruktioner Mål Krav Utveckla förmågan att söka kunskap med hjälp litteratur och andra källor. Utveckla förmågan att
Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6
Laboration 2 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Syfte: Att kunna använda sig av olika villkors- och kontrollflödeskonstruktioner
Introduktion till programmering D0009E. Föreläsning 1: Programmets väg
Introduktion till programmering D0009E Föreläsning 1: Programmets väg 1 Vad är en dator? En maskin vars beteende styrs av de innehållet (bitmönster) som finns lagrade i datorns minne (inte helt olikt förra
Vanliga frågor för VoiceXpress
Vanliga frågor för VoiceXpress 1) Hur stort ordförråd (vokabulär) innehåller VoiceXpress? VoiceXpress innehåller ett mycket omfattande ordförråd, och svaret på frågan varierar en aning beroende på hur
Laboration 0. Enhetsbokstaven anges med ett kolon efter och man läser ofta ut detta, exempelvis C:(sekolon).
Laboration 0 Laborationen är till för dig som inte är familjär med att navigera i filträd på en dator. Om du är van vid detta (vilket är det vanliga nu för tiden) så kan du bara snabbt titta igenom laborationen.
Provverktyg för elever instruktioner [SE]
Provverktyg för elever instruktioner [SE] Innehållsförteckning 1 Inledning 3 2 Göra proven 3 2.1 Logga in 3 2.2 Kontrollera ljudet för hörförståelseprovet 5 2.3 Göra ett prov 5 3 Uppgifterna 7 3.1 Uppgifter
LÄSLANDET - BOKSTÄVER OCH ORD
LÄSLANDET - BOKSTÄVER OCH ORD Programmet består av 21 övningar som övar förmågan att känna igen bokstäver och ord. Här tränas såväl läsning som stavning och bokstavsordning. Du får hela tiden stöd av inspelat
Programmering II (ID1019) :00-11:00
ID1019 Johan Montelius Programmering II (ID1019) 2015-06-11 08:00-11:00 Instruktioner Du får inte ha något materiel med dig förutom skrivmateriel. Mobiler etc, skall lämnas till tentamensvakten. Svaren
Föreläsning 3.1: Datastrukturer, en översikt
Föreläsning.: Datastrukturer, en översikt Hittills har vi i kursen lagt mycket fokus på algoritmiskt tänkande. Vi har inte egentligen ägna så mycket uppmärksamhet åt det andra som datorprogram också består,
Fältnamn /Rubrik Fältnamn /Rubrik Fältnamn /Rubrik Fältnamn /Rubrik Data Data Data Data Data Data Data Data
Datahantering i Excel Grundbegrepp I alla typer av databaser finns alltid en tabell där informationen i databasen fysiskt finns lagrad. Tabellen har samma enkla uppbyggnad som en tabell i ordbehandlingsprogrammet
kl Tentaupplägg
Tentaupplägg TIPS 1: Läs igenom ALLA uppgifterna. Välj den du känner är lättast först. Det kan gärna ta 10-20 minuter. Försök skriva saker som kan vara problem i uppgifterna. Är det något du absolut kommer
Emacs. Eric Elfving Institutionen för datavetenskap (IDA) 22 augusti 2016
Emacs Eric Elfving Institutionen för datavetenskap (IDA) 22 augusti 2016 Historia 2/21 Utvecklas konstant, från 70-talet Är en generellt texteditor (INTE ordbehandlare) som fokuserar på texten, inte utseendet
Introduktion till användning av linux-servern sledge och några övningsuppgifter
Uppsala universitet Institutionen för utbildning, kultur och medier Monica Langerth Zetterman och Richard Walls IT-stöd i undervisningen, HT10 Introduktion till användning av linux-servern sledge och några
kl Tentaupplägg
Tentaupplägg TIPS 1: Läs igenom ALLA uppgifterna. Välj den du känner är lättast först. Det kan gärna ta 10-20 minuter. Försök skriva saker som kan vara problem i uppgifterna. Är det något du absolut kommer
3. Hämta och infoga bilder
Sida 1 av 8 Lektion 1: sida 4 av 4 «Sida 3 av 4 Till kursens framsida 3. Hämta och infoga bilder Nu vet vi ju hur man sätter in text i sin sida. Men hur gör man med bilder? Det är inte svårt alls! Det
TDDI16: Datastrukturer och algoritmer
TDDI16: Datastrukturer och algoritmer Lab 3: Ordkedjor Höstterminen 2018 2018-05-14 1 Upplägg Första delen av instruktionen, avsnitt 2 till 6, innehåller en fullständig beskrivning av problemet utan några
Innehåll. Inledning. Inställningar. Inledning Inställningar Kortkommandon Övriga inställningar Kommandofönstret Övrigt
Innehåll Inledning Inställningar Kortkommandon Övriga inställningar Kommandofönstret Övrigt Inledning Sammanfattning Kortkommando är en ersättning, eller iallafall ett komplement, till Windows inbyggda
Konstruktion av datorspråk
Konstruktion av datorspråk Fö2: Funderingar kring hur man kan bedöma programspråk samt några fler detaljer i Ruby Peter Dalenius peter.dalenius@liu.se Institutionen för datavetenskap Linköpings universitet
Användarhandledning PW Excel Manager
Sida 1 av 12 Dokumenthistorik: Version: Datum: Ändrat av: Orsak till ändring: 0.1 2017-11-16 Skapar dokument, utkast. 1.0 2017-12-01 Gällande dokument Detta dokument beskriver, är ett hjälpmedel för att
Datalogi för E Övning 3
Datalogi för E Övning 3 Mikael Huss hussm@nada.kth.se AlbaNova, Roslagstullsbacken 35 08-790 62 26 Kurshemsida: http://www.csc.kth.se/utbildning/kth/kurser/2d1343/datae06 Dagens program Att skapa egna
Använd WordFinder från Mac App Store optimalt! Snabbguide med nyttiga tips och trix.
Använd WordFinder från Mac App Store optimalt! Snabbguide med nyttiga tips och trix. Tekniska förutsättningar För WordFinder från Mac App Store krävs följande: Processor: Intel Mac OS X 10.6.6 eller senare.
Övning 5 - Tillämpad datalogi 2013
/afs/nada.kth.se/home/w/u1yxbcfw/teaching/13dd1320/exercise5/exercise5.py October 1, 2013 1 0 # coding : latin Övning 5 - Tillämpad datalogi 2013 Automater, reguljära uttryck, syntax Sammanfattning Idag
Handbok KFind. Dirk Doerflinger Översättare: Stefan Asserhäll
Dirk Doerflinger Översättare: Stefan Asserhäll 2 Innehåll 1 Inledning 5 1.1 Starta KFind......................................... 5 2 Hitta filer 6 2.1 Fliken Namn och plats...................................
TENTA: TDDD11 & TDDC68. Tillåtna hjälpmedel. Starta Emacs, terminal och tentakommunikationsfönster. Skicka in frågor och uppgifter
TENTA: TDDD11 & TDDC68 Tillåtna hjälpmedel Det är tillåtet att ha böcker (t.ex. Ada-bok, formelsamlingar, lexikon,...) med sig samt utdelade lathundar (finns på kurshemsidan) för Ada, Unix och Emacs. Utdraget
Laboration: Grunderna i MATLAB
Laboration: Grunderna i MATLAB 25 augusti 2005 Grunderna i MATLAB Vad är MATLAB? MATLAB är ett interaktivt program för vetenskapliga beräkningar. Som användare ger du enkla kommandon och MATLAB levererar
Introduktion till Matlab
Introduktion till Matlab Analys och Linjär Algebra, del A, K1/Kf1/Bt1, ht10 1 Inledning Ni kommer använda Matlab i nästan alla kurser i utbildningen. I matematikkurserna kommer vi ha studio-övningar nästan
First Class uppgift 2
First Class uppgift 2 Hur du lägger till en signering i mail. När du loggat in på First Class ser det ut som på bilden nedan, det så kallade skrivbordet. Här ska du klicka på knappen inställningar uppe
UNIX. 2D1339 Programkonstruktion Hösten 2001 Datorintroduktion Laboration 1. Mål. Vad laborationen går ut på. Redovisning
Numerisk analys och datalogi KTH 100 44 Stockholm Ann Bengtsson, Kerstin Frenckner 2D1339 Programkonstruktion Hösten 2001 Datorintroduktion Laboration 1 UNIX Mål Syftet med denna laboration är att ni ska
Laborationer i kursmomentet Datoranvändning E1. Laboration nr 5: Mer om FrameMaker
Sid 1 Laborationer i kursmomentet Datoranvändning E1 http://www.etek.chalmers.se/~hallgren/eda/ : Mer om FrameMaker 1996, 1997 Magnus Bondesson 1998 och 99-09-22 Thomas Hallgren 1 Introduktion I Laboration
Läslandet 2 Ord och meningar
Läslandet 2 Ord och meningar Av LäraMera Program AB och Leripa AB Grafik Musik Röst Kristina Grundström Erik truedsson Gerda Nilsson 1 Innehållsförteckning LÄSLANDET 2 ORD OCH MENINGAR 3 Styrsätt 4 Menyn
Lägg till konto i rapport PromikBook
Lägg till konto i rapport PromikBook Ibland händer det att man vill bokföra på konton som ligger utanför standardkontoplanen vilket också innebär att dessa konton kanske inte dyker upp i rapporter automatiskt.
Vilken version av Dreamweaver använder du?
Sida 1 av 7 Lektion 1: sida 1 av 4 Till kursens framsida Sida 2 av 4» Lektion 1 Då ska vi sätta igång med den här kursens första lektion! Här kommer du att få lära dig hur man skapar och förbereder webbplatser
Extramaterial till Matematik Y
LIBER PROGRAMMERING OCH DIGITAL KOMPETENS Extramaterial till Matematik Y NIVÅ ETT Taluppfattning och tals användning ELEV Det finns många olika programmeringsspråk. Ett av dem är Python, som du ska få
Switch Driver 5. Programvara för Radio Switch, JoyBox och JoyCable. Sensory Software
Switch Driver 5 Programvara för Radio Switch, JoyBox och JoyCable. Sensory Software Innehållsförteckning Att använda programvaran Switch Driver... 3 Installera programvaran Switch Driver... 4 Kontaktanslutning...
Inlämningsuppgift : Finn. 2D1418 Språkteknologi. Christoffer Sabel E-post: csabel@kth.se 1
Inlämningsuppgift : Finn 2D1418 Språkteknologi Christoffer Sabel E-post: csabel@kth.se 1 1. Inledning...3 2. Teori...3 2.1 Termdokumentmatrisen...3 2.2 Finn...4 3. Implementation...4 3.1 Databasen...4
TDP002 Imperativ programmering. Laborationsmaterial emacs python-mode
TDP002 Imperativ programmering Laborationsmaterial emacs python-mode Höstterminen 2008 Innehållsförteckning Introduktion...3 Redovisning av laborationer...3 Laboration 1 emacs python-mode...4 Uppgift 1
kl Tentaupplägg
Tentaupplägg TIPS 1: Läs igenom ALLA uppgifterna. Välj den du känner är lättast först. Det kan gärna ta 10-20 minuter. Försök skriva saker som kan vara problem i uppgifterna. Är det något du absolut kommer
ALEPH ver. 16 Sökning
Fujitsu, Westmansgatan 47, 582 16 Linköping INNEHÅLLSFÖRTECKNING 1. INLEDNING... 1 2. SÖK... 1 2.1 Avancerad sökning... 2 2.2 CCL flera databaser... 2 2.3 Flera fält... 3 2.4 Regler för sökning... 4 2.5
Xemacs, första hjälpen!
Högskolan Dalarna Objektorienterad programmering, 5p 1 (5) Datateknik 19981018 HansEdy Mårtensson Xemacs, första hjälpen! Xemacs startas enklast på följande sätt: xemacs filnamn filnamn är benämningen
TDP Regler
Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt
Handi SMS. Bruksanvisning. För Handi med telefonfunktion. Version 3.10.12 eller senare. Rev G
Bruksanvisning Handi SMS För Handi med telefonfunktion Version 3.10.12 eller senare Abilia AB, Kung Hans väg 3, Sollentuna, Box 92, 191 22 Sollentuna, Sweden Phone +46 (0)8-594 694 00 Fax +46 (0)8-594
Handbok Artikulate. Andreas Cord-Landwehr Ondrila Gupta Översättare: Stefan Asserhäll
Andreas Cord-Landwehr Ondrila Gupta Översättare: Stefan Asserhäll 2 Innehåll 1 Inledning 5 1.1 Inlärningsmetodiken.................................... 5 1.2 De första stegen i Artikulate................................
Det virtuella tangentbordet
Kapitel tre Det virtuella tangentbordet I det här kapitlet ska vi titta närmare på tangentbordet i ipad och hur det används i olika sammanhang. Som du kanske har märkt öppnas tangentbordet automatiskt
2013 MUSICPARTNER AB
2013 MUSICPARTNER AB Innehåll 1. Logga in... 2 2. När du loggat in... 2 3. Att skapa pass - InStructor... 2 3.1 Skapa eller editera en spellista... 2 3.2 Sök efter musik... 3 3.3 Utökad sökning efter Artist
Grundläggande datorkunskap. Kom igång med dator
Grundläggande datorkunskap Kom igång med dator Korta fakta om datorn: DATORNS OLIKA DELAR BILDSKÄRM SYSTEMENHET TANGENTBORD MUS Använd bara musens vänsterknapp till att börja med. I många fall klarar du
Emacs. Eric Elfving Institutionen för Datavetenskap (IDA)
Emacs Eric Elfving Institutionen för Datavetenskap (IDA) Emacs Utveckas konstant, från 70-talet Är en texteditor (inte ordbehandlare) och fokuserar på texten, inte utseendet. Ingår i GNU-projektet Har
Icarus - Enkelt Skript. Manual revision 1.2, Keylogic AB.
Icarus - Enkelt Skript Manual revision 1.2, Keylogic AB. 1 Innehållsförteckning: Icarus - Enkelt Skript... 1 Innehållsförteckning:... 2 Allmänt... 3 Några grundläggande begrepp.... 3 Att komma igång, steg
Emacs Lathund. Johan Sandén <2014-04-03 tor>
Emacs Lathund Johan Sandén 1 Emacs lathund "C-x" nedan betyder att man ska hålla ned Ctrl-tangenten och sedan trycka på tangenten "x". M- nedan betyder att man ska hålla ned den s.k. "meta"-tangenten
Erfarenheter från labben
Erfarenheter från labben Uppgifterna tidigare Bättre instruktioner än förra veckan Väntetid Smidigare hjälp Olika krav från olika examinatorer Kan alltid kolla med Joachim God programmeringssed De allra
FLEXILAGER Ett hjälpmedel för anpassad lagerhantering. Original -version
Beskrivning av FLEXILAGER Ett hjälpmedel för anpassad lagerhantering. Original -version Flexénita Sunnerstavägen 58 186 70 Brottby tel: 08 512 41803 FLEXILAGER 2 Innehållsförteckning INTRODUKTION.....3
Mer om språk och Ruby
Mer om språk och Ruby TDP007 Konstruktion av datorspråk Föreläsning 2 Peter Dalenius Institutionen för datavetenskap 2014-01-21 Översikt över dagens föreläsning 1. Hur kan man bedöma ett språk? 2. Enhetstestning
Introduktion till programmering SMD180. Föreläsning 2: Variabler, uttryck och satser
Introduktion till programmering Föreläsning 2: Variabler, uttryck och satser 1 1 Värden De grundläggande saker som en dator manipulerar resultaten av beräkningar kallas värden Värden vi stött på: 2 och
DRAFT. CVS kurs laboration 1 Checka in, ut och uppdatera. Marcus Rejås. 17 november 2002
CVS kurs laboration 1 Checka in, ut och uppdatera Marcus Rejås 17 november 2002 Innehåll 1 Inledning 1 2 Förberedelser (om du skall köra CVS på en remote server) 1 2.1 Installera CYGWIN......................................
Gränssnitt för FakeGranska. Lars Mattsson
Gränssnitt för FakeGranska av Lars Mattsson (larsmatt@kth.se) Innehållsförteckning 1 Introduktion...3 2 Genomförande:...3 3 Användning...5 4 Kända buggar:...6 5 Källförteckning...6 2 1 Introduktion Taken
TDP Uppgift 1
Uppgift 1 Ett (svenskt) registreringsnummer består av tre bokstäver mellan A och Z (förutom bokstäverna I,Q och V) samt tre siffror. I denna uppgift ska du skapa ett program som ber användaren mata in
REDIGERA PLYMEDIA-TEXTER med Subtitle Workshop 2.5.1
REDIGERA PLYMEDIA-TEXTER med Subtitle Workshop 2.5.1 Det finns mängder av videotextfilsformat och verktyg för att hantera textremsor till videofilmer. Den här guiden gäller för redigeringsprogrammet Subtitle
Välkommen 2 Navigering 3 Bokstäverna 3 Övningar kopplade till boken 6 Ord 10
Interaktiv skrivtavla (IST) IST-kort Tutti Frutti3.indd 1 08-06-18 15.27.19 Manual digitalt lärarstöd för Tutti Frutti Välkommen 2 Navigering 3 Bokstäverna 3 Övningar kopplade till boken 6 Ord 10 Välkommen!