nah langsung aja di copy script di bawah ini sebelum nya ane menggunakan netbeans 7.3 dalam pembuatan program ini dan beri nama pencocokan.java
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package pencocokan; import java.util.Scanner; /** * * @author lupa lagi */ public class Pencocokan { /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here String text, pattern; Scanner in = new Scanner(System.in); System.out.print("Masukkan string = "); text = in.nextLine(); System.out.print("Masukkan pattern = "); pattern = in.nextLine(); //stringmatch berfungsi untuk StringMatch a = new StringMatch(text, pattern); if (a.run()) { System.out.println("Pattern ditemukan pada kata ke-" + a.idx); } else { System.out.println("Pattern tidak ditemukan dalam string"); } } }
kemudian buat satu lagi class yang bernama StringMatch.java dan copy kan script di bawah ini kedalam class tsb
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package pencocokan; /** * * @author lupa lagi */ public class StringMatch { String[] text; String[] pattern; int n, m, idx; boolean ketemu; public StringMatch(String text, String pattern) { //split berfungsi untuk memecah character menjadi array this.text = text.split(""); this.pattern = pattern.split(""); this.n = this.text.length; this.m = this.pattern.length; this.idx = -1; } public boolean run() { int i = 0; while (i <= n-m && !ketemu) { int j = 1; //equals berfungsi untuk membanding kan 2 buah variabel while (j < m && (this.pattern[j].equals(this.text[i + j]))) { j = j + 1; } if (j == m) ketemu = true; else i = i + 1; } if (ketemu) this.idx = i + 1; return ketemu; } }nah sedikit ane jelasin script di atas disini kita menggunakan 2 buah parameter untuk menjalankan program ini yaitu karakter yang udah di sediakan(text) dan kata kunci(petern)
nah ketika kalimat yang pertama tadi di runing maka tampil hasil nya seperti ini
Pattern ditemukan pada kata ke-26
yuhuuu.....bermanfaat sekali
ReplyDeleteObeng 5in1
sikat aja bro...
ReplyDelete