Lezione 7 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università

Slides:



Advertisements
Presentazioni simili
Introduzione al linguaggio C++
Advertisements

LINGUAGGIO DI PROGRAMMAZIONE C
MODULO 3 – ELABORAZIONE TESTI
Inizio… Linguaggi Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi Formali Linguaggi.
Algoritmi e Programmazione
Anno accademico Il preprocessore del linguaggio C.
Fondamenti di Informatica I a.a Il linguaggio C Il preprocessore La sostituzione di macro Le compilazioni condizionali Linclusione di file C.
"In Internet non siamo in grado di selezionare, almeno a colpo docchio, fra una fonte credibile e una folle. Abbiamo bisogno di una.
word (prima lezione): sommario
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Access: Query semplici
Lezione 4: Costrutti Condizionali Prof. Raffaele Montella.
Modelli simulativi per le Scienze Cognitive
Cercare informazioni sul Web. 5-2 Organizzazione dellinformazione tramite gerarchie Classificazione gerarchica Linformazione è raggruppata in un piccolo.
Un’introduzione a HTML (I)
Qualche esempio di tableaux
Semantica per formule di un linguaggio proposizionale p.9 della dispensa.
Lezione 2 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
Lezione 6 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
Lezione 3 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
informatica di base per le discipline umanistiche
Lezione 8 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
Lezione 4 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
Lezione 3 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX AWK Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Java base I: Sintassi e tipi di dati
IL GIOCO DELLA LOGICA.
Modulo 7 – reti informatiche u.d. 3 (syllabus – )
Università degli Studi di Bari Laurea in Chimica Di spense di Informatica - Dott. F. Mavelli Programmare in Matlab Funzioni di Libreria Funzioni definite.
HTML Lezione 5 Immagini. URL Un Uniform Resource Locator o URL (Localizzatore di risorsa uniforme) è una sequenza di caratteri che identifica univocamente.
TURBOPASCAL …. ripassiamo - prof. V. Riboldi -.
Microsoft Word (oppure, OpenOffice Writer)‏
La scala musicale 1.
BIOINFO3 - Lezione 281 PATTERN MATCHING E sicuramente una delle cose più utili del Perl, che lo rende un linguaggio estremamente potente. Permette di cercare.
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
BIOINFO3 - Lezione 201 Come in ogni corso di introduzione ad un linguaggio di programmazione, proviamo a scrivere lormai celebre primo programma di prova.
BIOINFO3 - Lezione 211 INPUT La lettura di un input dallo standard input (tastiera) si effettua utilizzando lespressione. Quando il programma incontra.
BIOINFO3 - Lezione 291 PATTERN MATCHING Imparato cosa sono e come si usano le espressioni regolari per individuare dei pattern, vediamo come si usano in.
ECDL Patente europea del computer
File e Funzioni Si possono distinguere tre tipi di file che vengono utilizzati in MATLAB: M-file: hanno estensione .m e in essi vengono memorizzati i.
TURBOPASCAL …. ripassiamo - prof. V. Riboldi -.
Prof.ssa Stella Beccaria a.s. 2013_2014
Lezione 3 Struttura lessicale del linguaggio
Microsoft Word Interfaccia grafica
Word: Gli strumenti di formattazione
1 Corso di Informatica (Programmazione) Lezione 8 (7 novembre 2008) Programmazione in Java: operatori aritmetici, operatori di assegnamento e cast.
Introduzione a Javascript
Rappresentazione dell’informazione nel calcolatore.
TEORIE E TECNICHE DEL RICONOSCIMENTO
Variabili Numeriche –Interi (byte, short, int, long): complemento a 2 –A virgola mobile (float, double): IEEE 745 Alfanumeriche –Carattere (char): Unicode.
Parte 3 Lo stato: variabili, espressioni ed assegnazioni
Microsoft Word Lezione 6 Riccardo Sama' Copyright  Riccardo Sama'
Paragrafo di WORD Segue una striscetta di testo di esempio estrapolata da un documento Word con la visualizzazione dei caratteri non stampabili attiva.
Ancora sulla shell. Shell e comandi La shell e' un programma che interpreta i comandi dell'utente. I comandi possono essere dati da terminale, oppure.
ELABORAZIONE TESTI MICROSOFT WORD EM 09.
Rappresentazione dell'informazione 1 Se ho una rappresentazione in virgola fissa (es. su segno e 8 cifre con 3 cifre alla destra della virgola) rappresento.
La codifica dei numeri.
Problemi, algoritmi e programmazione
Lezione 01 Writer: I Dati inserimento e modifica.
Cloud informatica V anno. Introduzione a PHP Lo scripting PHP PHP è un linguaggio di scripting lato server. Le caratteristiche di un linguaggio di scripting.
Lezione 8 Riccardo Sama' Copyright  Riccardo Sama' Word: gli strumenti di.
Informatica Problemi e algoritmi. una situazione che pone delle domande cui si devono dare risposte. Col termine problema o situazione problematica s’indica.
32 = 9 x2 = 9 x = 3 32 = 9 √9 = 3 L’estrazione di radice
La numerazione ottale. Il sistema di numerazione ottale ha ampio utilizzo in informatica E’ un sistema di numerazione posizionale La base è 8 Il sistema.
Impariamo ad usare Excel. Utilizzare l’interfaccia Avviare Excel e iniziare ad esplorare l'interfaccia per acquisire familiarità con esso… Non c'è modo.
Introduzione a Word Idoneità Informatica. Introduzione Un word processor è un programma per la composizione, la gestione e l’impaginazione dei testi Il.
Parsing ricorsivo discendente Il parsing ricorsivo discendente (recursive descent parsing) è un metodo di tipo top-down che può essere facilmente codificato.
Logica Lezione 8, DISTRIBUIRE COMPITO 1.
Lezione 4 – Linguaggi ed Interazione. Linguaggi La comunicazione è essenziale tra gli esseri umani Se vogliamo chiedere informazioni stradali ad un passante.
informatica di base per le discipline umanistiche
Transcript della presentazione:

lezione 7 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università di Pavia (continua…)

lezione 7 settima lezione: percorrere un testo vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università di Pavia (continua…)

lezione 7 cosa vuol dire per un calcolatore leggere un testo? quando salviamo un file di testo, registriamo in formato binario la sequenza specifica di lettere e delimitatori di cui si compone il testo nella memoria di massa del calcolatore possiamo dire che il calcolatore legge un testo mentre lo salva? un possibile test per rispondere a questa domanda è quello di chiedere al calcolatore se la parola cane sia mai stata usata nel testo e, se sì, dove è stata usata per la prima volta per rispondere a queste semplici domande, al calcolatore non basta aver salvato il testo: deve scorrerlo unutile metafora per rappresentare il processo di lettura di un testo da parte del calcolatore è dunque questa: leggere significa scorrere dei caratteri in sequenza ed essere in grado di riconoscere degli schemi ricorrenti questi schemi possono essere sillabe, parole o frasi, o ancora classi di sillabe, parole o frasi il testo come percorso (continua…)

lezione 7 in WORD è possibile cercare una parola in un testo attivando la funzione trovatrova la parola da cercare devessere scritta in unapposita finestrella di testo, che si apre attivando la funzione con un click la funzione, una volta avviata, individua la prima ricorrenza della parola desiderata alla destra o alla sinistra del cursore trova in WORD funziona dunque percorrendo il testo a partire dalla posizione corrente del cursore la ricerca può avvenire in una direzione o nellaltra, a seconda che sia stato chiesto di percorrere il testo verso il basso (a destra del cursore) o verso lalto (alla sua sinistra) il testo come percorso (II) (per saperne di più clicca sulle parole evidenziate!) (continua…)

lezione 7 la differenza di prospettiva (alto/basso, sinistra/destra) è dovuta a come immaginiamo sia organizzato il testo; se il testo è visto come una pura sequenza di parole, allora è naturale usare espressioni come cerca verso destra o cerca verso sinistra; se invece immaginiamo che il testo sia strutturato in paragrafi e pagine disposti luno sullaltro in verticale, diventa più intuitivo parlare di alto e basso, su e giù entrambe le espressioni alludono, comunque, alla stessa metafora del testo come percorso il testo come percorso (III) (continua…)

lezione 7 possiamo percorrere un testo alla ricerca di classi di sequenze di caratteri assai più complicate delle singole parole, ad esempio: tutte le parole che iniziano con la lettera maiuscola le stringhe di numeri la cui seconda cifra è 2 le linee di testo che terminano con un punto esclamativo ecc. le cosiddette espressioni regolari ci consentono di esprimere in modo immediato queste classi ricorda che allinterno di unespressione regolare qualsiasi delimitatore è un carattere uno spazio vuoto è un carattere un accapo è un carattere un tabulatore è un carattere il testo come percorso (IV) (continua…)

lezione 7 unespressione regolare (erre) è unespressione logica che descrive una particolare sequenza di caratteri ad esempio, allinterno di una erre possiamo usare loperatore logico AND per indicare una concatenazione c AND a: cercami la sequenza ca loperatore logico OR per indicare una disgiunzione cane OR gatto: cercami nel testo la parola cane o la parola gatto loperatore logico NOT per escludere certe sequenze AND NOT(c): cercami qualsiasi parola che non inizi per c per semplificare la scrittura (ma non necessariamente la lettura!) delle espressioni regolari è stata introdotta una sintassi particolare le espressioni regolari (continua…)

lezione 7 per convenzione, negli esempi seguenti una erre è sempre racchiusa tra slash: / loperatore logico di concatenazione (AND) è omesso: /ca/: cercami la sequenza ca /n a/: cercami la sequenza formata da una n seguita da uno spazio vuoto, seguito da una a esempio: un asino loperatore logico di disgiunzione (OR) è indicato in due modi diversi: con le parentesi quadre [ ] per esprimere la disgiunzione tra caratteri singoli /[abc]/: cercami una a, una b o una c da un pipe, |, per esprimere la disgiunzione tra stringhe /cane|gatto/: cercami nel testo la parola cane o la parola gatto la sintassi delle espressioni regolari (continua…)

lezione 7 loperatore logico NOT è espresso dal simbolo (prefissato) ^ racchiuso tra parentesi quadre [ ] / [^aeiou]/: cercami una (semi)consonante ad inizio di parola letteralmente: cercami un carattere preceduto da uno spazio vuoto e che non sia né una a, né una e, né una i, né una o e né una u la sintassi delle espressioni regolari (continua…)

lezione 7 una erre può contenere simboli che indicano quante volte una certa sequenza deve essere trovata questi simboli, detti moltiplicatori, sono tutti postfissi, cioè seguono immediatamente a destra la sequenza alla quale si riferiscono: operatore ? di opzionalità /pa?/: cercami una p, seguita opzionalmente da una a esempi: p, pa operatore * /pa*/: cercami una p, seguita opzionalmente da una o più a esempi: p, pa, paa, paaa... operatore + /pa+/: cercami una p, seguita da almeno una a esempi: pa, paa, paaa, paaaa... quante volte? (continua…)

lezione 7 / {n,m}/: il deve occorrere almeno n volte e al massimo m volte / {n,}/: il deve comparire almeno n volte / {n}/: il deve comparire esattamente n volte moltiplicatori evoluti (continua…)

lezione 7 lambito di un moltiplicatore in una erre è la sequenza alla quale il moltiplicatore si riferisce un moltiplicatore può fare riferimento a un solo carattere o a una sequenza di caratteri nel primo caso, il moltiplicatore segue semplicemente a destra nel secondo caso, la sequenza che definisce lambito va raggruppata tra parentesi tonde esempi: /pa*/: p, pa, paa, paaa... /(pa)*/: pa, papa, papapa, papapapa... ambito nei moltiplicatori (continua…)

lezione 7 in una erre è possibile definire in modo molto semplice una classe di caratteri ordinati secondo una scala, indicando tra parentesi quadre soltanto il primo e lultimo elemento della scala, separati da un trattino esempi: /[a-z]/: tutti i caratteri dellalfabeto compresi tra la a e la z /[0-9]/: tutte le cifre decimali dallo 0 al 9 classi di caratteri (continua…)

lezione 7 utili abbreviazioni REClasse di caratteri equivalente /\d//[0-9]/ /\w//[a-zA-Z0-9_]/ /\s//[ \t\n]/ /\D//[^0-9]/ /\W//[^a-zA-Z0-9_]/ /\S//[^ \t\n]/ caratteri particolari: \t tabulatore \n accapo (continua…)

lezione 7 esiste un carattere speciale che ha la funzione di jolly, cioè può corrispondere a qualsiasi carattere (con la sola eccezione dellaccapo) questo carattere speciale è il punto:. esempi: /p./: pp, pa, pe, pi, pr, pn, p, p?... il carattere jolly (continua…)

lezione 7 esiste un carattere che ha la funzione di trasformare un carattere speciale in un carattere ordinario questo carattere speciale è il backslash, anche noto come carattere escape \ esempi: /p./: pp, pa, pe, pi, pr, pn, p, p?... /p\./: p. il carattere normalizza (continua…)

lezione 7 nel descrivere una sequenza con una erre è possibile ancorarla a un punto specifico del testo: ad esempio, è possibile dire che la sequenza in questione deve apparire allinizio della riga, oppure alla fine, oppure ad inizio di parola questi punti di riferimento testuali, detti ancore, sono: ^ : indica linizio riga $: indica il fine riga \<: indica linizio di parola \>: indica il fine parola \b: indica il confine di parola \B: indica qualsiasi carattere con la sola eccezione del confine di parola ancore (continua…)

lezione 7 ancore (II) ¶Esempio · di · testo · incolonnato,¶ ¶con · marcatori · in · evidenza... inizio riga ^ fine riga $ confine parola \b inizio parola \< fine parola \> corpo di parola \B (continua…)

lezione 7 ricorda: unespressione regolare descrive una particolare sequenza di caratteri nel testo luso più comune dellespressioni regolari è quello di evidenziare tutte le sequenze di caratteri nel testo per le quali la erre è verificata (a partire da quella più vicina al cursore) questo uso è chiamato in letteratura pattern matching (dallinglese corrispondenza con uno schema) nota che due espressioni regolari diverse possono individuare gli stessi punti del testo, ma evidenziare sequenze differenti! / [^aeiou]/: cercami una consonante ad inizio di parola / [^aeiou][a-z]+/: cercami una parola che inizi per consonante pattern matching (continua…)

lezione 7 pattern matching (II) (continua…)

lezione 7 pattern matching (III) (continua…)

lezione 7 importanza delle ancore (continua…)

lezione 7 importanza delle ancore (II) (continua…)

lezione 7 importanza delle ancore (III) (continua…)

lezione 7 abbiamo visto che le parentesi allinterno di una erre servono a definire lambito di un moltiplicatore esiste tuttavia un ruolo ulteriore svolto dalle parentesi (anche in assenza di un moltiplicatore): quello di memorizzare lespressione contenuta in parentesi in una variabile temporanea il contenuto della variabile può essere richiamato con lespressione\, dove esprime la posizione della coppia di parentesi a partire da sinistra: 1 = contenuto della prima coppia di parentesi 2 = contenuto della seconda coppia di parentesi 3 = contenuto della terza coppia di parentesi ecc. il doppio ruolo delle parentesi (continua…)

lezione 7 il contenuto della variabile richiamato con lespressione\ può essere a sua volta modificato, come illustra la funzione trova e sostituisci speciale in WORD… il doppio ruolo delle parentesi (II) (continua…)

lezione 7 il doppio ruolo delle parentesi (III) (continua…)

lezione 7 alcune limitazioni la negazione può avere come ambito solo insiemi di caratteri, non sequenze (o stringhe), infatti: 1)/[^zione] \> /: nega la disgiunzione 2)/[^(zione)] \> /: ha la stessa semantica di /[^zione]\>/ 3)/[^z][^i][^o][^n][^e] \> /: nega non solo tutte le stringhe in zione, ma anche molte altre (ad es. quelle in sione), infatti … rappresentando una concatenazione di negazioni, la 3) nega qualsiasi parola che contenga almeno una e in ultima posizione, una n in penultima, una o in terzultima, e così via. perché? (continua…)

lezione 7 alcune limitazioni (II) la semantica di una erre che escluda tutte le parole che finiscono in zione può essere parafrasata come segue: trovami tutte le parole che terminano in zione ed escludile dalla ricerca per ottenere questo risultato abbiamo dunque bisogno: 1)di individuare tutte le parole in zione, 2)e poi di escluderle lespressione che cerchiamo dovrebbe compendiare due operazioni incompatibili logicamente: prima la selezione delle parole in zione poi la loro de-selezione (continua…)

lezione 7 alcune limitazioni (III) è possibile ottenere lo stesso risultato con i seguenti passi: selezioniamo tutte le parole che terminano in zione aggiungiamo a ciascuna di esse unetichetta speciale (ad es. T) selezioniamo tutte e sole le parole che non sono seguite dalla etichetta T (continua…)

lezione 7 marca parole in zione (continua…)

lezione 7 escludi parole in zioneT (continua…)

lezione 7 funzione trova in Word (fine excursus)

lezione 7 espressioni regolari su internet (continua…)

lezione 7 fine settima lezione settima lezione percorrere un testo (lezione 8)