ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Μάθημα 9 ο : Σύνολα χαρακτήρων και UNICODE. Γεώργιος Πετάσης. Ακαδημαϊκό Έτος:

Σχετικά έγγραφα
«Τεχνογλωσσία VIII» Εξαγωγή πληροφοριών από κείμενα

Εισαγωγή στον Προγραμματισμό

Αναπαράσταση Μη Αριθμητικών Δεδομένων

! Δεδομένα: ανεξάρτητα από τύπο και προέλευση, στον υπολογιστή υπάρχουν σε μία μορφή: 0 και 1

Κείμενο ASCII Unicode - HTML. Κωδικοποίηση ASCII / Unicode HTML

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές (ΗΥ)

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 7 και 8: Αναπαραστάσεις. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τα επιμέρους τμήματα Η ΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ. Αναπαράσταση μεγεθών. Αναλογική αναπαράσταση ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΜΟΝΑ Α ΕΛΕΓΧΟΥ

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων

Μάθημα 2: Παράσταση της Πληροφορίας

Προγραμματισμός Υπολογιστών

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Αναπαράσταση δεδομένων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΗ ΑΣΚΗΣΗ 2

Τετάρτη 5-12/11/2014. ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 12

[2] Υπολογιστικά συστήματα: Στρώματα. Τύποι δεδομένων. Μπιτ. επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΑΣΚΗΣΗ 5 Ανάπτυξη Προγράμματος Συμπίεσης/Αποσυμπίεσης Αρχείων

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ. Δρ. Κουζαπάς Δημήτριος Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής. Αναπαράσταση Δεδομένων

Αριθμητικά Συστήματα Η ανάγκη του ανθρώπου για μετρήσεις οδήγησε αρχικά στην επινόηση των αριθμών Κατόπιν, στην επινόηση συμβόλων για τη παράσταση

Ψηφιακά Κυκλώματα Ι. Μάθημα 1: Δυαδικά συστήματα - Κώδικες. Λευτέρης Καπετανάκης

Αναπαράσταση Δεδομένων. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Εισαγωγή στην Επιστήμη των Υπολογιστών

Συμβολοσειρές ΣΥΜΒΟΛΟΣΕΙΡΕΣ. Γεώργιος Παπαϊωάννου ( )

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία

ΑΝΑΠΑΡΑΣΤΑΣΗ ΚΕΙΜΕΝΟΥ

ΠΛΗ21 Κεφάλαιο 2. ΠΛΗ21 Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: 2 Δυαδική Κωδικοποίηση

Αναπαράσταση Δεδομένων

Αριθμητικά Συστήματα

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 8: Συστήματα αρίθμησης

Πληροφορική. Ενότητα 4 η : Κωδικοποίηση & Παράσταση Δεδομένων. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Κ15 Ψηφιακή Λογική Σχεδίαση 2: Δυαδικό Σύστημα / Αναπαραστάσεις

Περιεχόµενα. οµή Η/Υ: Αναπαράσταση εδοµένων. υαδικό σύστηµα. Συστήµατα Αρίθµησης υαδικό Οκταδικό εκαεξαδικό Παραδείγµατα

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Αναπαράσταση Δεδομένων (2 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 5 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

Συµβολοσειρές - Strings

ΠΛΗΡΟΦΟΡΙΚΗ I. 5 η ΔΙΑΛΕΞΗ Δεδομένα

Εισαγωγή στην Πληροφορική ΓΕΝΙΚΟ ΤΜΗΜΑ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ TEI ΧΑΛΚΙ ΑΣ

ΘΕΜΑ : ΣΥΣΤΗΜΑΤΑ ΑΡΙΘΜΗΣΗΣ. ΔΙΑΡΚΕΙΑ: 1 περιόδους. 22/1/ :11 Όνομα: Λεκάκης Κωνσταντίνος καθ. Τεχνολογίας

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Β1.1 Αναπαράσταση Δεδομένων και Χωρητικότητα Μονάδων Αποθήκευσης

Κεφάλαιο 2 Η έννοια και η παράσταση της πληροφορίας στον ΗΥ. Εφ. Πληροφορικής Κεφ. 2 Καραμαούνας Πολύκαρπος 1

Αρχιτεκτονική υπολογιστών

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

Προγραμματισμός Ι (ΗΥ120)

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τα επιμέρους τμήματα ΥΠΟΛΟΓΙΣΤΗ Η ΔΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ. Αναπαράσταση μεγεθών. Αναλογική αναπαράσταση ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΜΟΝΑΔΑ ΕΛΕΓΧΟΥ

Δομημένος Προγραμματισμός

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

Mεταβλητές (variables) και Σταθερές (constants)

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μαθήματα 6 και 7 Αναπαράσταση της Πληροφορίας στον Υπολογιστή. 1 Στέργιος Παλαμάς

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Ψηφιακά Συστήματα. 2. Κώδικες

Προγραμματισμός Η/Υ (ΤΛ2007 )

Τυχαίοι αριθμοί Αλφαριθμητικά και χαρακτήρες

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Μάθημα 1 ο : Εισαγωγή στην γλωσσική τεχνολογία. Γεώργιος Πετάσης. Ακαδημαϊκό Έτος:

ΠΛΗΡΟΦΟΡΙΚΗ I Ενότητα 6

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων

Διάλεξη 8η: Αλφαριθμητικά (strings)

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

ΚΩΔΙΚΕΣ ΕΠΙΚΟΙΝΩΝΙΑΣ

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Εισαγωγή στην επιστήμη των υπολογιστών. Αναπαράσταση Δεδομένων

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Προγραμματισμός Υπολογιστών με C++

Οργάνωση και Σχεδίαση Υπολογιστών Η Διασύνδεση Υλικού και Λογισμικού, 4 η έκδοση. Σύντομη Εισαγωγή στη χρήση του προσομοιωτή και συμβολομεταφραστή

Διάλεξη 20: Χαμηλού Επιπέδου Προγραμματισμός II

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.

1 η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Ακ. έτος , 5ο Εξάμηνο, Σχολή ΗΜ&ΜΥ

Πολυμέσα. Ιστορική Αναδρομή Υπερκείμενο

Βασική δοµή και Λειτουργία Υπολογιστή

Προγραμματισμός Η/Υ (ΤΛ2007 )

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

Υπολογιστές και Πληροφορία 1

Προγραμματισμός Η/Υ (ΤΛ2007 )

ΕΠΛ031 - Εισαγωγή στον Προγραμματισμό

4. ΤΟ ΚΕΙΜΕΝΟ ΣΤΑ ΠΟΛΥΜΕΣΑ

ΑΣΚΗΣΗ 7: ΑΛΦΑΡΙΘΜΗΤΙΚΑ

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

Δομημένος Προγραμματισμός (ΤΛ1006)

Φύλλο εργασίας για την κωδικοποίηση

Προγραµµατισµός Ι (ΗΥ120)

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

Πράξεις με δυαδικούς αριθμούς

Δομημένος Προγραμματισμός (ΤΛ1006)

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. (Διάλεξη 15)

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

Κεφάλαιο 1. Συστήματα αρίθμησης και αναπαράστασης

Ανάπτυξη και Σχεδίαση Λογισμικού

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Αρχιτεκτονική-Ι. Ενότητα 1: Εισαγωγή στην Αρχιτεκτονική -Ι

Εισαγωγή στην επιστήµη των υπολογιστών. Αναπαράσταση Δεδοµένων

Transcript:

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ Μάθημα 9 ο : Σύνολα χαρακτήρων και UNICODE Γεώργιος Πετάσης Ακαδημαϊκό Έτος: 2012 2013 ΤMHMA MHXANIKΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ, Πανεπιστήμιο Πατρών, 2012 2013

Σύνολα χαρακτήρων; (1) Τι είναι αυτά, και γιατί με αφορούν; Σχετίζονται με την επεξεργασία φυσικής γλώσσας; Έχετε λάβει ποτέ e-mail με το εύγλωττο θέμα «????????????????»; Χρειάστηκε να γράψετε ποτέ κώδικα που θα διαχειρίζεται e-mails στα Ιαπωνικά; Έχετε αναρωτηθεί τι κάνει αυτή η «μυστηριώδης» ετικέτα «Content-Type» στην HTML; Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 1

Σύνολα χαρακτήρων; (2) Δεν βλέπετε κανένα λάθος στο ακόλουθο: Απλό κείμενο ASCII Χαρακτήρες 8 δυφίων; Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 2

Ιστορική αναδρομή (1) Το 1963 δημοσιεύθηκε το πρότυπο ASCII (American Standard Code for Information Interchange) Αφορούσε του αγγλικούς χαρακτήρες Κωδικοποιούσε χαρακτήρες με έναν αριθμό από το 32 έως το 127 Π.χ. το κενό είναι το 32, το A το 65, κλπ. Χρησιμοποιούσε 7 δυφία (bits) Οι κωδικοί κάτω από το 32 αναφέρονται σαν «μη εκτυπώσιμοι», και αποτελούν χαρακτήρες ελέγχου Ο χαρακτήρας 7 παράγει ένα «μπιπ» Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 3

ASCII Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 4

Ιστορική αναδρομή (2) Επειδή όμως το byte χωρά 8 δυφία, αρκετοί σκέφτηκαν: «Μμμ, μπορούμε να χρησιμοποιήσουμε τους κωδικούς 128-255 για άλλους σκοπούς» Το πρόβλημα ήταν ότι πολλοί είχαν την ίδια ιδέα, την ίδια στιγμή, για διαφορετικούς σκοπούς IBM-PC: OEM character set ή ASCII-DOS Μια κωδικοσελίδα που πρόσθεσε μερικούς τονισμένους χαρακτήρες, και χαρακτήρες σχεδίασης Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 5

Ιστορική αναδρομή (3) Η εξάπλωση των υπολογιστών ανά την υφήλιο, έφερε πληθώρα κωδικοσελίδων Τις οποίες ανέλαβε να οργανώσει ο οργανισμός ANSI Οι κωδικοί < 128 είναι ίδιοι (ASCII) Οι κωδικοί > 127 διαφέρουν, ανάλογα την κωδικοσελίδα (code page) Η κωδικοσελίδα 737 περιέχει τα ελληνικά σε περιβάλλον DOS Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 6

Ιστορική αναδρομή (4) Τα ασιατικά αλφάβητα ωστόσο, έχουν χιλιάδες «χαρακτήρες», οι οποίοι δεν χωρούν σε 8 δυφία Η λύση δόθηκε μέσω του DBCS (double byte character set) Ένας χαρακτήρας μπορεί να ήταν 1 ή δύο bytes Ήταν εύκολο να προσπεράσεις μια συμβολοσειρά από την αρχή προς το τέλος, αλλά όχι το αντίστροφο Χρήση συναρτήσεων όπως AnsiNext() & AnsiPrev() για μετακινήσεις μέσα σε συμβολοσειρές Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 7

Ιστορική αναδρομή (5) Ωστόσο, για πολύ καιρό «προσποιούμασταν» ότι ένα byte ήταν ένας χαρακτήρας, και τα πάντα δούλευαν όσο: Ήμασταν στο ίδιο λειτουργικό σύστημα Τα πάντα ήταν σε μια γλώσσα Μέχρι που ήρθε ο παγκόσμιος ιστός Όπου τα πάντα μπερδέυτηκαν Ευτυχώς όμως, είχε εφευρεθεί το UNICODE! Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 8

UNICODE (1) To UNICODE προσπαθεί να δημιουργήσει ένα σύνολο χαρακτήρων για όλες τις γλώσσες του κόσμου Μύθος: οι χαρακτήρες του UNICODE έχουν μήκος 16 δυφία, οπότε περιγράφονται μόνο 65536 χαρακτήρες Αυτό δεν ισχύει Κάθε γράμμα αντιστοιχίζεται με ένα code point Α U+0391, ΰ U+03B0 (charmap.exe) Hello U+0048 U+0065 U+006C U+006C U+006F Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 9

UNICODE (2) Μια συμβολοσειρά είναι ένα σύνολο από code points Αναπαράσταση στην μνήμη/δίσκο; Κωδικοποιήσεις (encodings) Hello U+0048 U+0065 U+006C U+006C U+006F Big endian: 00 48 00 65 00 6C 00 6C 00 6F (BOM: FE FF) Little-endian: 48 00 65 00 6C 00 6C 00 6F 00 (BOM: FF FE) BOM: Byte Order Marker Encoding: UCS-2 (2 bytes) or UTF-16 (16 δυφία) Υπάρχει και το UCS-4, ή UTF-32! Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 10

UNICODE (3) Μια θαυμάσια ιδέα: UTF-8 Μια ακόμα κωδικοποίηση, που χρησιμοποίει bytes 8 δυφίων Κάθε χαρακτήρας από το 0-127, κωδικοποιείται με 1 byte Χαρακτήρες > 127, κωδικοποιούνται σε 2, 3,, 6 bytes Οι αγγλικοί χαρακτήρες αναπαριστώνται με τον ίδιο τρόπο όπως στο ASCII Και φυσικά καταλαμβάνουν τον ίδιο χώρο στην μνήμη Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 11

UNICODE (4) Και φυσικά είναι δυνατή η μετατροπή σε εκατοντάδες κωδικοσελίδες: ISO-8859-1 (Latin-1), ISO-8859-15, Windows-1252 (Αγγλικά) ISO-8859-7, Windows-1253 (Ελληνικά) Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 12

Τι κρατάμε από όλα αυτά; Ότι δεν έχει καμιά σημασία να έχουμε μια συμβολοσειρά, αν δεν ξέρουμε την κωδικοποίησή της! Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 13

C/C++ Για να χρησιμοποιήσουμε UCS-2: char wchar_t str*() wcs*() strlen() wcslen() Literal strings: wchar_t *str = L Hello ; Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 14

Java Στην Java, τα πάντα αναπαριστώνται σε UCS-2 Ο τύπος char είναι 16 δυφίων Αυτό σημαίνει ότι χωράνε μόνο οι πρώτοι 65,536 χαρακτήρες του UNICODE Οι υπόλοιποι ονομάστηκαν «συμπληρωματικοί» (supplementary characters) Αναπαριστώνται σαν δυάδες από char String newstring(int codepoint) { } return new String(Character.toChars(codePoint)); Περισσότερα εδώ: http://docs.oracle.com/javase/tutorial/i18n/text/usage.html Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 15

Python (1) Η python υποστηρίζει επίσης UNICODE Αν και δεν είναι ο εγγενής της τύπος >>> import sys >>> import codecs >>> sys.stdin.encoding cp1253 >>> sys.stdout.encoding cp1253 >>> sys.stdout = codecs.getwriter("cp1253" )(sys.stdout) Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 16

Python (2) >>> a = unicode("απλό τεστ στα ελληνικά", "cp1253" ) >>> a u"\u03b1\u03c0\u03bb\u03cc \u03c4\u03b5\u03c3\u03c4 \u03c3\u03c4\u03b1 \u03b5\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ac" >>> print a απλό τεστ στα ελληνικά >>> import nltk >>> b = nltk.word_tokenize(a) >>> print b [u"\u03b1\u03c0\u03bb\u03cc", u"\u03c4\u03b5\u03c3\u03c4", u"\u03c3\u03c4\u03b1", "\u03b5\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ac"] >>> for item in b: print item απλό τεστ στα ελληνικά Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 17

Tcl/Tk H Tcl χρησιμοποιεί εγγενή αναπαράσταση σε UTF-8: set fd [open file.txt] fconfigure $fd encoding utf-8 puts $fd Καλημέρα Κόσμε! close $fd > string is upper Λ > 1 > string tolower ΚΑΛΗΜΕΡΑ > καλημερα Γλωσσική Τεχνολογία, Μάθημα 9 ο, Σύνολα χαρακτήρων και UNICODE 18