Você está na página 1de 14

AUTOMATA Nama-nama kelompok: 1. Gimon Rival 2. Lumintang Hizkia 3. Runtuwarow Maikel 4. Sumampow Andreas 5.

Pojoh Eliezer Regular Expressions Token Token merupakan unit atau elemen dasar bahasa komputer (seperti 'kata' di bahasa manusia), dimana unit tersebut tidak terbagi lagi. Token merupakan bagian hasil dari pemecahan sumber program yaitu penerjemahan lexeme pada saat melakukan scanner. Lexical Tokens Identifiers : x y11 elsex _i00 Keywords : if else while break Integers : 2 1000 -500 5L Floating point: 2.0 0.00020 .02 1.1e5 0.e-10 Symbols : + * { } ++ < << [ ] >= Strings : x He said, \Are you?\ Comments : /** ignore me **/ Lexeme Lexeme adalah string yang merupakan masukan dari analisis Leksikal. Atau sebarisan karakter program sumber yang sesuai dengan pola suatu token. Contoh :: const pi = 3.1416. Maka pi adalah leksim untuk token identifier.

Contoh Diagram transisi untuk keyword dan identifier

B. ELEMEN-ELEMEN BAHASA 1. Karakter Huruf, Angka, dan Garis-bawah Yang dimaksud dengan huruf adalah A s/d Z dan a s/d z, angka adalah 0 s/d 9, dan garis-bawah adalah _. White-space Karakter-karakter space, tab, line-feed, carriage-return, form-feed, vertical-tab, dan new-line disebut whitespace character karena mereka mempunyai fungsi sebagai spasi antara kata-kata atau baris-baris. Setiap konstanta dan identifier selalu dipisahkan oleh karakter-karakter ini. Tanda-baca dan karakter-khusus Tanda-baca dan karakter-khusus dalam bahasa C mempunyai kegunaan yang bervariasi, dari pengorganisasian teks pogram sampai pendeinisian tugas-tugas yang akan dilakukan oleh kompiler. Karakter-karakter yang termasuk ke dalam kelompok ini adalah: ,.;:?'"()[]{}<>!|/\~+#%&^*-= Escape Sequence Karakter-karakter escape-sequence adalah suatu urutan karakter yang digunakan untuk mewakili ekspresi suatu karakter lain. Kumpulan karakter ini selalu dimulai oleh karakter backslash (\) dan diikuti oleh suatu huruf atau suatu kombinasi angka. Daftar karakter-karakter escape-sequence adalah sebagai berikut.

\n \t \v \b \r \f \a \' \" \\ \ddd \xddd

new-line horizontal-tab vertical-tab backspace carriage-reurn form-feed bell tanda-petik tanda-kutip backslash karakter ASCII dalam notasi oktal karakter ASCII dalam notasi heksadesimal

2. Operator Operator (lambang-operasi) adalah simbol-simbol, baik berupa satu atau beberapa karakter, yang menetapkan bagaimana suatu nilai dimanipulasi. itu adalah: ! ~ - + * / % < > = | ^ ' ++ -- -= += /= %= << >> == != <= >= |= && || ?: &= ^= <<= >>= 3. Konstanta Integer Constant Suatu integer-constant adalah angka desimal, oktal, atau heksadesimal yang mewakili suatu nilai bilangan bulat. Suatu konstanta-desimal (berbasis-sepuluh) dibentuk oleh sekumpulan angka 0 s/d 9, dengan ketentuan tidak dimulai oleh angka 0. Suatu konstanta-oktal (berbasis-delapan) dibentuk oleh sekumpulan angka 0 s/d 7, dengan ketentuan dimulai oleh angka 0. Suatu konstanta-heksadesimal (berbasis-enambelas) dibentuk oleh sekumpulan angka 0 s/d 9 dan atau huruf A s/d F atau a s/d f, dengan ketentuan dimulai oleh angka-huruf 0X atau 0x. Contoh:

Desimal 10 132 32179

Oktal 012 0204 076663

Heksadesimal 0xA 0x84 0x7DB3

Floating-point Constant Suatu floating-point constant adalah angka desimal yang mewakili suatu nilai bilangan nyata. Nilai dari konstanta ini meliputi porsi-porsi bilangan bulat, pecahan, dan eksponen. Aturan penulisan konstanta ini adalah seperti dalam format berikut. [digit][.digit][E|e[+|-]digit]

Di mana digit adalah berupa sekumpulan angka 0 s/d dan E atau e sebagai simbol eksponen. Contoh: 12E-3 6.25E+4 berarti 12 kali 10 pangkat -3 berarti 6.25 kali 10 pangkat 4

Character Constant Suatu character-constant dibentuk dengan menempatkan suatu karakter di antara dua tanda-petik (' '). Suatu escape-character dipandang sebagai satu karakter, oleh karena itu dapat dijadikan suatu character constant. Contoh: 'A' '\n' '\0x41' String-Literal Suatu string-literal dibentuk oleh satu atau sekumpulan karakter yang ditempatkan di antara dua tanda-kutip. Contoh: "BANDUNG" "Hari Jum\at" "Tit\a\a" "Baris-1\nBaris-2" 4. Identifier Identifier adalah nama yang diberikan untuk konstanta-bernama, variabel, jenis-data, fungsi, dan label di dalam program. Setiap identifier yang akan digunakan harus didefinisikan sebelumnya. Suatu identifier dibentuk oleh satu atau beberapa buah karakter, sebanyak-banyaknya 31 karakter, yang dimulai oleh suatu huruf atau garis-bawah dan dapat diikuti oleh huruf, angka, atau garis-bawah. Catatlah, bahasa C membedakan penggunaan huruf-besar dan huruf-kecil dalam suatu identifier. Contoh:

ClrScr H2o TempatTinggal Nama_Siswa Kota Pilihan identifier letter (letter_or_digit_or_und* letter_or_digit+)? 5. Keyword Untuk kegunan dalam pemrograman, bahasa C mencadangkan sejumlah identifier yang telah didefinisikan, disebut keyword, bagi pemrogram. Kata-kata ini merupakan instruksi terhadap C untuk mengerjakan/menyatakan suatu hal tertentu. Oleh karena itu semua keyword tidak dapat didefiniskan-ulang dan hanya digunakan sesuai dengan peruntukannya. Berikut adalah daftar keyword dalam bahasa C. auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while Di samping keyword-keyword di atas, bahasa C menyediakan beberapa keyword lain yang dapat digunakan dalam beberapa implementasi tertentu. Itu adalah: far near huge cdecl pascal

Auto

u Q0 Q0

Q1 Q1

Q2 r Q2

Q3 Q3

Q4 Q4 k Q5

Break

Case

Q0

Q1

Q2

s Q3

e Q4

Char

Q0

Q1

Q2

Q3

Q4

Else

Q0

Q1

Q2

Q3

Q4

Enum

Q0

Q1

Q2

Q3

Q4

A. JENIS DATA UTAMA Pada dasarnya C hanya mengenal empat jenis kata, yaitu char, int, float, dan double. Suatu jenis data menetapkan suatu rentangs nilai yang dapat dimiliki oleh suatu konstanta dan variabel, atau dihasilkan oleh suatu ekspresi atau fungsi. (Nicklaus Wirth 1976:4) Dengan demikian, jika anda akan menggunakan suatu konstanta, variabel, atau fungsi maka mereka harus ditetapkan jenis datanya, karena setiap operasi yang dibentuk didasarkan pada suatu jenis data tertentu. Jenis data char merupakan suatu byte tunggal yang mempunyai kemampuan untuk memegang suatu data karakter. Jenis data int merupakan suatu jenis data yang mempunyai kemampuan untuk memegang suatu nilai bilangan bulat. Jenis data float merupakan suatu jenis data yang mempunyai kemampuan untuk memegang suatu nilai bilangan nyata berpresisi tunggal. Jenis data double merupakan suatu jenis data yang mempunyai kemampuan untuk memegang suatu nilai bilangan nyata berpresisi ganda. Perluasan jenis data int diwujudkan dalam dua jenis data lain, yaitu short dan long, yang berbeda kemampuannya dalam menyimpan rentang nilai yang diberikan kepadanya. Jenis jenis data char, int, short, dan long dapat didahului oleh keyword signed atau unsigned untuk menyatakan bahwa jenis data tersebut meliputi bilangan bulat negatif atau tidak. Jika itu tidak dinyatakan, maka dianggap signed. Rentang nilai dan ukuran setiap jenis data tergantung pada jenis mesin dan kompiler yang digunakan. Code: Jenis data char unsigned char signed int unsigned int short unsigned short long unsigned long float double ukuran 1 byte 1 byte 2 byte 2 byte 2 byte 2 byte 2 byte 4 byte 4 byte 8 byte Rentang nilai -128 s/d 127 0 s/d 255 -32,768 s/d 32,767 0 s/d 65,535 -32,768 s/d 32,767 0 s/d 65,535 -2,147,483,648 s/d 2,147,463,647 0 s/d 4,294,967,295 3.4E-38 s/d 3.4E+38 1.7E-308 s/d 1.7E+308

Catatan: * akhiran L perlu dituliskan dibelakang konstanta bilangan bulat untuk membedakan jenis data long atau unsigned long dari jenis data bilangan bulat lainnya. * Jenis data string dipandang sebagai array karakter B. VARIABEL Variabel adalah suatu besaran yang nilainya dapat berubah pada saat program berlangsung. Setiap variabel dinyatakan oleh suatu identifier. Setiap variabel harus dideklarasikan terlebih dahulu sebelum digunakan di dalam program. Setiap variabel yang dideklarasikan harus dinyatakan jenis datanya. Bentuk umum pendeklarasian variabel adalah sebagai berikut. [type] id_var1[, id_var2 ];

(a-z,A-Z) Id_var Type Q0


Id_var (a-z,A-Z),

Id_var, , ,

, Q1 Q2

Q3

Id_var (a-z,A-Z)

Type data = int, char, float, atau double. Id_var = a-z, A-Z dimana id_var1 dan id_var2 adalah nama variabel yang dideklarasikan, dan type adalah jenis data yang ditetapkan untuk id_var1 dan id_var2. Contoh : int liter, harga; char nama[20]; dalam deklarasi suatu variabel dapat dilakukan initialisasi nilai terhadap variabel tersebut. Bentuk umum deklarasi dan initialisasi variabel adalah sebagai berikut. [type] id_var1 = val_var1[, id_var2 = val_var2 ]; dimana id_var1 dan id_var2 adalah nama variabel yang dideklarasikan, val_var1 dan val_var2 adalah nilai awal yang ditetapkan pada id_var1 dan id_var2, dan type adalah jenis data untuk id var_1 dan id_var2. contoh : int liter, harga = 385; char nama[20] = "Abdallah"; contoh program-3.1 akan meminta pengguna program untuk menuliskan namanya, menetapkannya terhadap variabel, kemudian mencetak pesan dalam media output standar. Program 3.1: SALAM.C Code:
#include <stdio.h> char nama [20], prompt [20] = "Tulis nama anda: "; main ( ) { printf (prompt); scanf ("%s", nama); printf ("Halo %s. Selamat belajar C.\n", nama); }

apabila program tersebut dijalankan maka akan muncul tampilan sebagai berikut. Tulis nama anda: Anugrah Halo Anugrah. Selamat belajar C. C. OPERASI ARITMATIKA Operator aritmatika yang digunakan dalam bahasa C pada umumnya sama dengan lambang operasi hitung

biasa. Operator operator tersebut, kegunaan, prioritas, contoh ekspresi dan hasilnya adalah seperti terlihat pada tabel 3.2 Tabel 3.2: Operator Aritmatika Code:
operator * / % + operasi perkalian pembagian sisa pembagian penjumlahan pengurangan Contoh ekspresi 21*8 27/3 30%4 2+10 29-13 Hasil 208 9 2 12 16

Catatan * Operator % tidak dapat digunakan untuk jenis data float atau double. * Operator * / dan % mempunyai tingkat prioritas yang sama, begitu pula operator + dengan -, kelompok operator pertama mempunyai tingkat prioritas yang lebih tinggi dari kelompok yang kedua. Berdasarkan aturan ekspresi yang telah disebutkan dalam awal bab ini maka tahapan pelaksanaan yang dilalukan untuk ekspresi-ekspresi aritmatika berikut adalah seperti dinyatakan oleh ekspresi sebelahnya. Code:
Ekspresi 2+3*4 (2+3)*4 2*3%4 2*(3%4) 2+3.0/4-5 Tahap pelaksanaan 2+12 14 5*4 20 6%4 2 2*3 6 2+0.75-5 2.75-5 -2.25 5/(4-5) 5/-1 -5

(2+3)/(4-5)

Hati hatilah dengan operator pembagian. Apabila pembilang dan penyebut berupa bilangan bulat maka hasil operasi ini berupa bilangan bulat pula. Untuk mendapatkan hasil bagi berupa bilangan nyata maka salah satu dari pembilang dan penyebut harus berupa bilangan nyata. Contoh: Code:
ekspresi 10/3 (float) 10/3 Hasil 3 3.333333

D. OPERASI HUBUNGAN DAN LOGIKA Operasi hubungan digunakan untuk menguji hubungan antara dua buah operand. Nilai yang dihasilkan operasi ini adalah 0 kalau salah dan 1 kalau benar. Operator-operator yang digunakan adalah seperti ditunjukan dalam tabel 3.3 Tabel 3.3: Operator Hubungan Code:

operator == != < > <= >=

Operasi Sama dengan Tidak sama dengan Lebih kecil Lebih besar Lebih kecil atau sama Lebih besar atau sama

Perhatikanlah contoh pengurangan operator hubungan serta nilai akhirnya pada ekspresi berikut ini. Code:
ekspresi 2>3 2!=3 4*5==10*2 Hasil 0 -1 -1

Prioritas pelaksanaan operasi hubungan lebih rendah dari pelaksanaan operasi aritmatika. Berikut ini adalah contoh tahapan pelaksanaan yang dilakukan untuk ekspresi-ekspresi aritmatika dan hubungan. Code:
ekspresi 2<5-3 Tahap pelaksanaan 2<2 0 2<=5-3 2<=2 -1 10*2==5*4 20==20 -1

Operasi logika digunakan untuk mengoperasikan operand berjenis data bilangan bulat berdasarkan aturan aturan operasi logika pada aljabar modern. Pada operasi ini setiap operand yang bernilai 0 dinyatakan salah dan operand yang bernilai bukan 0 dinyatakan benar. Nilai yang dihasilkan operasi ini sama seperti operasi hubungan, yaitu 0 kalau salah dan 1 kalau benar. Tabel 3.4 menunjukan nama operator, cotoh ekspresi dan hasil operasi daripada operator logika. Operator Logika, Contoh dan Hasil Ekspresi Code:
Operator ! && Operasi NOT AND Operand A Benar Salah Benar Benar Salah Salah Benar Benar Salah Salah Operand B Ekspresi !A A&&B Hasil Salah Benar Benar Salah Salah Salah Benar Benar Benar Salah

||

OR

Benar Salah Benar Salah Benar Salah Benar Salah

A||B

Contoh: Code:
ekspresi 2<3&&4<5 Tahap pelaksanaan benar && 4 < 5 benar && benar benar 20 && 5 < 4 benar && salah salah 20 || 5 < 4 benar || salah

10*2&&5<4

10*2||5<4

benar

1. Operasi Penarikan dan Penurunan Bahasa C memberikan dua buah operator yang tidak umum untuk penaikan (incrementing) dan penurunan (decrementing) nilai suatu variabel. Variabel yang dioperasikan harus berjenis data bilangan bulat atau pointer. Operasi penaikan berfungsi untuk menambah nilai variabel yang dinyatakannya dengan konstanta 1, sementara operasi penurunan adalah kebalikannya. Operator yang digunakan adalah ++ dan --. Operator ini dapat ditempatkan sebelum atau sesudah nama variabel. Jika ditempatkan sebelum nama variabel maka operasi ini akan didahulukan dari operasi operator lain yang ada dalam suatu ekspresi, dan sebaliknya jika ditempatkan sesudah nama variabel. Berikut ini adalah contoh ekspresi operasi operasi ini dan persamaannya. Code:
ekspresi a++ a-b=a++/6 b=3*a-b=++a/6 b=3*--a c=a++ + ++b Persamaan a=a+1 a=a-1 b=a/6 a=a+1 b=3*a a=a-1 a=a+1 b=a/6 a=a-1 b=3*a b=b+1 c=a+b a=a+1

Dari contoh contoh di atas, anda dapat melihat kesederhanaan penulisan beberapa pernyataan ke dalam satu pertanyaan dalam bahasa C. 2. Operasi Penetapan operasi penetapan digunakan untuk menetapkan suatu nilai terhadap suatu variabel. Bentuk umum operasi ini adalah id_var = ekspresi dimana id_var adalah identifier variabel yang akan menampung nilai hasil ekspresi. Contoh: a = 5*27 Dalam banyak hal, nilai variabel yang akan ditetapkan juga merupakan bagian dari ekspresi, seperti a = a+4 Jika terdapat kasus terakhir, bahasa C memberikan kemudahan bagi anda untuk menyederhanakan penulisan operasi penetapan tersebut, yaitu menjadi a += 4 Hampir semua binary operators dapat dibentuk penyederhanaannya, yaitu dalam bentuk umum id_var op= ekspresi Di mana op adalah salah satu dari operator +, -, *, /, %, <<, >>, &, ^, dan |. Bentuk operasi di atas mengandung arti. id_var = id_var op ekspresi

Contoh: Code:
ekspresi x*=y-1 x+=5 x>>=3 Persamaan x=x*(y+1) x=x+5 x=x>>3

3. Prioritas dan Arah Pelaksanaan Operator tabel berikut menunjukan tingkat prioritas dan arah pelaksanaan operator, baik yang telah dibahas maupun belum. Operator-operator yang terletak pada baris yang sama mempunyai tingkat prioritas sama dengan arah pelaksanaan sesuai dengan yang dinyatakan dalam kolom sebelahnya. Tabel 3.5: Prioritas Dan Arah Pelaksanaan Operator

Code:
operator () [] -> . ! ~ ++ -- -(type)* & sizeof */% +<< >> < <= > >= == != & ^ | && || ?: = += -= dll , Arah pelaksanaan Dari kiri ke kanan Dari kanan ke kiri Dari kiri ke kanan Dari kiri ke kanan Dari kiri ke kanan Dari kiri ke kanan Dari kiri ke kanan Dari kiri ke kanan Dari kiri ke kanan Dari kiri ke kanan Dari kiri ke kanan Dari kiri ke kanan Dari kanan ke kiri Dari kanan ke kiri Dari kiri ke kanan

Regular Expressions Regular Expressions atau yang sering disebut dengan Regex adalah notasi yang digunakan dalam manipulasi teks dan data, contohnya untuk pada parsing, validasi input, atau pada find and replace text. Ada juga yang bilang bahwa Regex itu adalah suatu notasi fleksibel dan ringkas untuk menemukan dan menggantikan pola teks. Notasi Regex terdiri dari dua jenis karakter dasar, yaitu karakter teks literal (normal) dan metakarakter. Karakter normal menyatakan bahwa teks harus eksis di string target, sedangkan metakarakter menyatakan teks dapat bermacam-macam di string target. Regular expression memungkinkan kita menguraikan sejumlah teks guna menemukan pola karakter spesifik. Selain itu, kitajuga bisa mengganti, memodifikasi, atau menghapus suatu substring dengan cepat dan akurat, sesuai kriteria yang kita inginkan. Seperti apa sebenarnya Regex itu? Seperti yang sudah dijelaskan di atas, Regex memiliki dua jenis karakter dasar salah satunya adalah Metakarakter untuk menyatakan teks dapat bermacam-macam di string target sesuai dengan metakarekter yang digunakan.

^.$ {} [..] (..) * + ? | \ \t \n \r \f \a \e

Metakarakter pada Regex antara lain : Tanda awal dan akhir dari sebuah baris Untuk mendifinisikan range Untuk mendefinisikan character class Untuk mendefinisikan group

Untuk menyatakan perulangan minimal 0 kali sampai tak terhingga Untuk menyatakan perulangan minimal satu kali sampai tak terhingga Untuk menyatakan perulangan satu kali atau tidak sama sekali Operator logika untuk OR Menjadikan karakter setelahnya tidak lagi dianggap sebagai metcharacter dan hanya akan dianggap sebagai karakter biasa Mereperesentasikan karakter tab Mereperesentasikan karakter newline Mereperesentasikan carriage-return character Mereperesentasikan form-feed character Mereperesentasikan karakter bel Mereperesentasikan karakter escape

Disamping itu terdapat juga Kelas Karakter yang dapat digunakan untuk mencari kesesuaian atau kecocokan karakter pada pola yang telah ditentukan.
[abc] [^abc] [a-zA-Z] [a-d[m-p]] [a-z&&[def]] [a-z&&[^bc]]

Hanya a atau b atau c Semua karater selain a , b dan c Salah satu karaketer dari a sampai z atau dari A sampai Z Salah satu karakter dari hasil gabungan antara a sampai d dan m sampai p, (union [a-dm-p]) Salah satu karakter dari hasil irisan a sampai z dan def (intersection = [def]) Salah satu karakter dari a sampai z selain b dan c (substraction= [ad-z])

Pada Regex terdapat juga Kelas karakter yang sudah didefinisikan diantaranya adalah sbb:
. \d \D \s \S \w \W Mewakili semua karakter kecuali line terminator Merepresentasikan sebuah angka = [0-9] Merepresentasikan selain angka [^0-9] Merepresentasikan karakter whitespace [ \t\n\f\r\x0B] Merepresentasikan selain karakter whitespace [^\s] Merepresentasikan sebuah huruf atau angka [a-zA-Z0-9] Merepresentasikan selain huruf atau angka [^\w]

Contoh Penggunaan Regex : 1. Validasi Tanggal dengan format dd-MM-yyyy Ekspresi Regularnya = ((^0[1-9]{1}|^[12][0-9]|3[01])-(0[1-9]|1[012])-(19|20)\d\d$) 2. Validasi IP pada IPV4 Ekspresi Regularnya = ^([0-9]{1,2}|(0)[0-9]{1,2}|(1)[0-9]{1,2}|(2)[0-4]?[0-9]?|(2)(5)[0-5]?)\.([09]{1,2}|(0)[0-9]{1,2}|(1)[0-9]{1,2}|(2)[0-4]?[0-9]?|(2)(5)[0-5]?)\.([0-9]{1,2}|(0)[0-9]{1,2}|(1)[09]{1,2}|(2)[0-4]?[0-9]?|(2)(5)[0-5]?)\.([0-9]{1,2}|(0)[0-9]{1,2}|(1)[0-9]{1,2}|(2)[0-4]?[0-9]?|(2)(5)[0-5]?)$ 3. Validasi Alamat Email Ekspresi Regularnya = ^([A-Za-z0-9]+([_]|[.])?)+[A-Za-z0-9]+\@(([A-Za-z0-9]+[-]?)+[A-Za-z09]+\.)+[A-Za-z]{2,3}$

Hubungan Ekspresi regular dengan Finite state automata. Ekspresi FSA


q0=qf

q0

qf

q0

qf

sR

fR qf

r+t

q0

sT T fT

q0
rt

qf R fR sT T fT

sR

r*

q0

sR

fR

qf

Contoh : ada urutan karakter yang disebut dengan statement fahrenheit := 32 + celcius * 1.8, Maka akan diterjemahkan kedalam token-token seperti dibawah ini identifier Fahrenheit operator := integer 32 operator penjumlahan + Identifier celcius operator perkalian * real /float 1.8

regex untuk type data bahasa C : int i Q0 Float f Q2 Q2 l Q2 o Q2 a Q2 t Q3 Q0 n Q2 t Q3

integral [0-9]+

float [0-9]* . [0-9]+

Char c Q0 Q1 h Q2 a Q3 r Q0 Q0

REFERENCES

http://www.google.co.id/url?sa=t&source=web&cd=7&ved=0CDIQFjAG&url=http%3A%2F%2Fwww.cs.vassar.edu%2F~cs331 %2Flectures%2Flexicalanalysis.ppt&rct=j&q=FSA+untuk+lexeme+float&ei=K98lTJm_BsS1rAeUqITfBA&usg=AFQjCNG_2idjAxP0_A27DYWXQ84 aGQzNsg http://www.google.co.id/url?sa=t&source=web&cd=1&ved=0CBUQFjAA&url=http%3A%2F%2Fwww.engr.uconn.edu%2F~wei wei%2FL1.ppt&rct=j&q=FSA+untuk+lexeme+float&ei=K98lTJm_BsS1rAeUqITfBA&usg=AFQjCNEtajqZj4g0YBarGRArqPiS NYEwsg http://www.google.co.id/url?sa=t&source=web&cd=4&ved=0CCQQFjAD&url=http%3A%2F%2Fwww.cs.virginia.edu%2Fkim %2Fcourses%2Fcs671%2Flec%2Fcs671-02lex.ppt&rct=j&q=FSA+untuk+lexeme+keyword+C+programming&ei=POUlTJOCFtHCrAeont3eBA&usg=AFQjCNED7b6Mwb 7Aj9qSk1hUX91-AYxgWg http://www.google.co.id/url?sa=t&source=web&cd=6&ved=0CCwQFjAF&url=http%3A%2F%2Fwww.facweb.iitkgp.ernet.in%2 F~niloy%2FCompiler%2Fnotes%2Flex.doc&rct=j&q=regex+untuk+lexeme+keyword+C+programming&ei=Tu4lTNjNEcqFrQe Fm-WBBQ&usg=AFQjCNEpMiN9KsxNdm6k7pnJJViu9ClSNw http://www.slidefinder.net/c/cpsc_503_computational_linguistics_lecture/5664915 http://www.slidefinder.net/c/compiler_construction_in4020_lecture_koen/10447885/p2 http://www.cs.virginia.edu/~weimer//2008-415/lectures/weimer-415-04.pdf http://cryptodrm.engr.uconn.edu/c244lect/L1.pdf http://www.slidefinder.net/search/regular%20expression/p2 http://www.briancarter.info/pubs/applications_of_regular_expressions.pdf

www.google.com Powerpoint: Ekspresi regular Powerpoint: cs671-02-lex pdf: OPK.pdf

Você também pode gostar