ANALISIS DAN IMPLEMENTASI REGULAR EXPRESSION UNTUK PENGUMPULAN DATA DAN LEVENSHTEIN DISTANCE DALAM MEMBANDINGKAN DATA HALAMAN WEB KOMPETENSI JARINGAN KOMPUTER [SKRIPSI] I WAYAN ADI SAPTANA NIM. 0708605089 PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS UDAYANA BUKIT JIMBARAN 2011
ANALISIS DAN IMPLEMENTASI REGULAR EXPRESSION UNTUK PENGUMPULAN DATA DAN LEVENSHTEIN DISTANCE DALAM MEMBANDINGKAN DATA HALAMAN WEB KOMPETENSI JARINGAN KOMPUTER [SKRIPSI] I WAYAN ADI SAPTANA NIM. 0708605089 PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS UDAYANA BUKIT JIMBARAN 2011 i
ANALISIS DAN IMPLEMENTASI REGULAR EXPRESSION UNTUK PENGUMPULAN DATA DAN LEVENSHTEIN DISTANCE DALAM MEMBANDINGKAN DATA HALAMAN WEB KOMPETENSI JARINGAN KOMPUTER [SKRIPSI] Sebagai syarat untuk memperoleh gelar Sarjana Komputer Pada Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Udayana Tulisan ini merupakan hasil yang belum pernah dipublikasikan I WAYAN ADI SAPTANA NIM. 0708605089 Pembimbing I Pembimbing II Ngurah Agus Sanjaya ER, S.Kom, M.Kom NIP. 19780321 200501 1 001 Ida Bagus Gede Dwidasmara, S.Kom.,M.Cs. NIP. 19850315 201012 1 007 ii
LEMBAR PENGESAHAN TUGAS AKHIR Judul : Analisis dan Implementasi Regular Expression untuk Pengumpulan Data dan Levenshtein Distance dalam Membandingkan Data Halaman Web Bidang Kompetensi : Jaringan Komputer Nama : I Wayan Adi Saptana NIM : 0708605089 Tanggal Seminar : 18 Oktober 2011 Disetujui oleh : Pembimbing I Penguji I Ngurah Agus Sanjaya ER, S.Kom, M.Kom NIP. 19780321 200501 1 001 Pembimbing II Dra. Luh Gde Astuti, M.Kom NIP. 19640114 199402 2 001 Penguji II Ida Bagus Gede Dwidasmara, S.Kom.,M.Cs. NIP. 19850315 201012 1 007 I Made Widiartha, S.Si., M.Kom. NIP. 19821220 200801 1 008 Penguji III I Gusti Agung Gede Arya Kadnyanan, S.Kom., M.Kom. NIP. - Mengetahui, Ketua Jurusan Ilmu Komputer FMIPA UNUD, Drs. I Wayan Santiyasa, M.Si NIP. 19670414 199203 1 002 iii
Judul :Analisis dan Implementasi Regular Expression untuk Pengumpulan Data dan Levenshtein Distance dalam Membandingkan Data Halaman Web Nama : I Wayan Adi Saptana (NIM : 0708605089) Pembimbing : 1. Ngurah Agus Sanjaya ER., S.Kom, M.Kom 2. Ida Bagus Gede Dwidasmara,S.Kom,M.Cs. ABSTRAK Pengambilan data pada sebuah halaman web umumnya dilakukan dengan cara mengambil data langsung ke basisdata. Tidak adanya hak akses terhadap penggunaan basisdata menimbulkan masalah dalam mengumpulkan informasi pada halaman web. Pengambilan data jika dilakukan dengan cara manual membutuhkan waktu yang lama. Pengambilan informasi langsung pada isi halaman website dapat dilakukan dengan Regular Expression dan Levenstein Distance untuk membandingkan tingkat similarity antar nama barang. Penelitian ini bertujuan untuk membuat sistem yang mampu melakukan pengambilan informasi yang dibutuhkan pada halaman website. Sistem yang dikembangkan membandingkan setiap nama barang berserta harganya pada beberapa website. Metode Regular Expression digunakan untuk membentuk sebuah pola dari halaman website yang diambil informasinya. Konsep pemotongan string nama barang dan menentukan diagonal utama pada matriks perbandingan antara dua nama barang untuk selanjutnya menjadi batas toleransi perbedaan karakter dengan menggunakan algoritma Levenshtein Distance. Dalam penelitian ini juga dilakukan analisis terhadap variable S yang mempengaruhi hasil kinerja algoritma ini. Dari hasil penelitian dapat diperoleh kesimpulan bahwa sistem ini dapat mengambil informasi yang dibutuhkan langsung dari halaman website tanpa mengakses basisdatanya. Sistem dapat membandingkan nama barang yang diberi toleransi nilai variabel S adalah sebanyak 2 (dua) karakter sebagai batas similarity antar nama barang. Kata Kunci : Regular Expression, Levenstein Distance, Similarity iv
Title : Analysis and Implementation of Regular Expression for Data Collection and Levenshtein Distance to Comparing Data in Web Page Name : I Wayan Adi Saptana (NIM: 0708605089) Supervisor : 1. Ngurah Agus Sanjaya ER. S.Kom, M.kom 2. Ida Bagus Gede Dwidasmara. S.Kom,M.Cs. ABSTRACT Retrieval of data on a web page is generally carried out by taking directly to the database. The absence of access right to the use of database proses problems in gathering information on a web page. Retrieval of data by manual take a long time. Retrieval of information Directly on the content of web pages can be done with Regular Expression and Levenstein Distance to compare the level of similarity between the name of goods. This research aims to create a system capable of retrieving the information needed on Web page. The system developed to compare each item name and the price on some websites. Regular Expression Methods were applied to form a pattern taken from the web page information. The concept of cutting the string name of the item and determining the main diagonal of the matrix comparisons between the two names to the next item became the limit of tolerance difference in the character by using Levenshtein Distance algorithm. In this research, an analysis of variable S that affect the outcome of this algorithm s performance was also conducted. From the research results, conclusion can be drawn that this system can retrieve the required information directly from the pages of the website without accessing it s database. The system can compare names of goods that were given tolerance value of the variable S is 2 (two) characters as the boundary similarity between the name of goods. Keywords : Regular Expression, Levenstein Distance, Similarity v
KATA PENGANTAR Puji syukur penulis panjatkan ke hadapan Tuhan Yang Maha Esa karena berkat rahmat-nya, penulis dapat menyelesaikan tugas akhir yang berjudul ANALISIS DAN IMPLEMENTASI REGULAR EXPRESSION UNTUK PENGUMPULAN DATA DAN LEVENSHTEIN DISTANCE DALAM MEMBANDINGKAN DATA HALAMAN WEB tepat pada waktunya. Pada kesempatan ini penulis ingin mengucapkan terimakasih kepada : 1. Bapak Drs. I Wayan Santiyasa,M.Si., selaku Ketua Jurusan Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam (MIPA) Universitas Udayana. 2. Bapak Ngurah Agus Sanjaya ER, S.Kom.,M.Kom., selaku pembimbing I dan Bapak Ida Bagus Gede Dwidasmara,S.Kom,M.Cs., selaku pembimbing II yang telah banyak membantu, menuntun, dan menyempurnakan tugas akhir ini tepat pada waktunya. 3. Seluruh bapak dan ibu dosen beserta staf pegawai di Jurusan Ilmu Komputer Fakultas MIPA Universitas Udayana yang telah membantu dan memberikan semangat dan motivasi serta bersedia meluangkan waktu untuk turut memberikan saran dan masukan dalam penyempurnaan tugas akhir ini. 4. Keluarga dan teman-teman mahasiswa Ilmu Komputer atas kerja sama dan dukungannya selama penulisan tugas akhir ini. Penulis menyadari bahwa penulisan tugas akhir ini masih jauh dari sempurna, untuk itu kritik dan saran yang bermanfaat demi kesempurnaan tugas akhir ini sangat penulis harapkan. Bukit Jimbaran, September 2011 Penyusun, I Wayan Adi Saptana vi
DAFTAR ISI LEMBAR JUDUL... i LEMBAR PERNYATAAN... ii LEMBAR PENGESAHAN... iii ABSTRAK... iv KATA PENGANTAR... vi DAFTAR ISI... vii DAFTAR GAMBAR... ix DAFTAR TABEL... x DAFTAR LAMPIRAN... xi BAB I PENDAHULUAN... 1 1.1 Latar Belakang... 1 1.2 Rumusan Masalah... 2 1.3 Tujuan... 2 1.4 Batasan Masalah... 2 1.5 Manfaat... 3 BAB II TINJAUAN PUSTAKA... 4 2.1 Regular Ekspression... 4 2.2 Similarity... 7 2.3 Levenshtein Distance... 7 BAB III METODOLOGI PENELITIAN... 10 3.1 Variable Penelitian... 10 3.2. Analisis Sistem... 10 3.3. Desain Sistem... 11 3.3.1 Desain Tabel... 15 3.3.2 Rancangan Antarmuka Sistem... 16 BAB IV HASIL DAN PEMBAHASAN... 19 4.1 Implementasi Basisdata... 19 4.2 Implementasi Algoritma... 20 vii
4.2.1 Algoritma Regular Expression... 20 4.2.2 Algoritma Levenstein Distance... 22 4.3 Implementasi Antarmuka Sistem... 25 4.3.1 Halaman Beranda... 25 4.3.2 Halaman Pencarian Barang... 26 4.3.3 Halaman Login dan Input Data Web... 26 4.3.4 Halaman Pengaturan Data web... 27 4.4 Pengujian Sistem... 28 4.4.1 Lingkungan Uji Coba... 28 4.4.2 Data Uji Coba... 29 4.4.3 Hasil Pengujian... 29 4.4.3.1 Pola Regex... 29 4.4.3.2 Memasukan Data Web Target... 30 4.4.3.3 Penambahan Data Barang... 30 4.4.3.4 Pencarian Barang... 31 4.5 Analisis Hasil Pengujian... 32 BAB V KESIMPULAN DAN SARAN... 37 5.1 Kesimpulan... 37 5.2 Saran... 37 DAFTAR PUSTAKA... 38 LAMPIRAN viii
DAFTAR GAMBAR Halaman Gambar 2.1. Array dari dinamic programming untuk string X dan Y... 9 Gambar 3.1. Flowchart Sistem pengambilan data pada halaman web... 11 Gambar 3.2. Context Diagram Pengambilan Data Halaman Web... 12 Gambar 3.3. DFD Level 0 Proses Input Data... 13 Gambar 3.4. DFD Level 1 Proses Mengumpulkan Data Web... 14 Gambar 3.5 ERD Basis Data... 15 Gambar 3.6. Halaman Beranda... 17 Gambar 3.7. Pencarian Barang... 17 Gambar 3.8. Halaman Input Data Web Target... 18 Gambar 4.1. Source Code Web Target... 21 Gambar 4.2. Algoritma Mengambil Data... 22 Gambar 4.3. Algoritma Memisahkan Nama Barang... 23 Gambar 4.4. Algoritma Membandingkan Data... 24 Gambar 4.5. Halaman Beranda... 25 Gambar 4.6. Pencarian Barang... 26 Gambar 4.7 Halaman Login... 26 Gambar 4.8. Halaman Input Data Web Target... 27 Gambar 4.9. Halaman Pengolahan Data Web Target... 27 Gambar 4.10. Basisdata Pada Update Pertama... 33 Gambar 4.11. Web Target Pada Update Kedua... 34 Gambar 4.12. Basisdata Pada Update Kedua... 35 Gambar 4.13. Web Target Pada Update Ketiga... 35 Gambar 4.14. Tampilan Proses Update Ketiga... 36 Gambar 4.15. Basis Data Pada Update Ketiga... 36 ix
x
DAFTAR TABEL Halaman Tabel 2.1. Tabel Pola umum pada Regex... 5 Tabel 3.1. Tabel User... 15 Tabel 3.2. Tabel Web Target... 16 Table 3.3. Tabel Barang... 16 Tabel 4.1. Implementasi Tabel User... 19 Tabel 4.1. Implementasi Tabel Web Target... 19 Tabel 4.2. Implementasi Tabel barang... 20 Tabel 4.3. Skenario Pengujian Pola Regex... 29 Tabel 4.3. Skenario Pengujian Memasukan Data Web Target... 30 Tabel 4.4. Skenario Pengujian Penambahan Data... 31 Tabel 4.5. Skenario Pengujian Pencarian... 31 Tabel 4.6. Hasil Pengujian Data Barang... 32 xi
DAFTAR LAMPIRAN Lampiran 1 Uji Pola Regex xii