• Tidak ada hasil yang ditemukan

Implementasi Algoritma Enhanced Confix Stripping Stemmer Pada Kamus Sistem Bahasa Isyarat Indonesia

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Algoritma Enhanced Confix Stripping Stemmer Pada Kamus Sistem Bahasa Isyarat Indonesia"

Copied!
24
0
0

Teks penuh

(1)

LAMPIRAN A: Listing Program

<?php /**

* APA YANG BARU dari class Enhanced_CS? * 1. penambahan variable

* $prefix = variable ini untuk menyimpan prefix * $suffix = variable ini untuk menyimpan suffix

* $inflec = variable ini untuk menyimpan inflection suffix * $prefin = variable ini untuk menyimpan inflection prefix * 2. penambahan&$matches pada fungsi preg_match * dasar opsi preg_match

* int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]] )

*3. Penambahan aturan untuk mengecek kata “pemrograman”

* fungsi CekKamus, Pemenggalan Inflection Suffixes, Pemenggalan Inflection Prefix, *Pemenggalan Awalan, dan Pemenggalan Akhiran diambil dari sumber :

*http://4shared.com/rar/124o08qi/stbi.html */

Coding Untuk Menampilkan Gambar

for ($k = 0; $k < count($arrayKataDasar); $k++) { if ($arrayKataDasar[$k] != "") {

$sql = "SELECT kata,gambar FROM kata WHERE kata = '$arrayKataDasar[$k]'"; $result = mysql_query($sql);

if (mysql_num_rows($result) > 0) { $tampil = mysql_fetch_row($result);

echo "<td align='center' width=20px height= 30px><img src='gambar/$tampil[1]' alt=''><align='center'><font size = 25>$tampil[0]</font></align></td>";

} else{

$kataNotFoundInDB = $arrayKataDasar[$k];

for ($j = 0; $j < strlen($kataNotFoundInDB); $j++) {

$sql = "SELECT gambar FROM kata WHERE kata = '$kataNotFoundInDB[$j]'"; $result = mysql_query($sql);

$tampil = mysql_fetch_row($result);

echo "<td align='center' width=20px height= 30px><img src='gambar/$tampil[0]' alt='' width=200px height=

250px><align='center'>$kataNotFoundInDB[$j]</align></td>"; }

} } }

Proses Parsing Kalimat Dan Stemming Kata

if (!empty($_POST[text])){

$stemmer = new Enhanced_CS(); $teks = strtolower($_POST['text']);

$tokenKarakter=array('’','—','

(2)

$teks= str_replace($tokenKarakter,' ',$teks); $tok = strtok($teks, "\n\t");

while ($tok !== false) { $teks = $tok;

$tok = strtok(" \n\t"); }

$split = explode(' ',$teks);

echo "<font size =5><b>Kata/Kalimat:</b><i>".$teks.'</i></font><br>'; echo "<tr><table align = center border=1>";

foreach($split as $key=>$kata){ $kataAwal = trim($kata); if($kataAwal!=""){

$kataDasar = $stemmer->generate(trim($kata)); $suff = $stemmer->suffix;

$pref = $stemmer->prefix; $inflec = $stemmer->inflec; $prefin = $stemmer->prefin;

if(is_array($pref)){ $pref = null;

}else if(!empty($pref)){ $pref .= " ";} if(is_array($suff)){

$suff = null;

}else if(!empty($suff)){ $suff = " ".$suff;} if(is_array($inflec)){

$inflec = null;

}else if(!empty($inflec)){ $suff .= " ".$inflec;} if(is_array($prefin)){

$prefin = null;

}else if(!empty($prefin)){ $pref = $prefin.$pref;}

$hasil = $pref.$kataDasar.$suff; echo '</n>';

$stemmer->suffix = null; $stemmer->prefix = null; $stemmer->inflec = null; $stemmer->prefin = null; $suff = null;

$pref = null; $inflec = null; $prefin = null;

$arrayKataDasar = explode(" ", $hasil);

class Enhanced_CS{ var $prefix; var $suffix; var $inflec; var $prefin;

(3)

public function cekKamus($kata){ // cari di database

$sql = "SELECT * from kata where kata ='$kata' LIMIT 1"; //echo $sql.'<br/>';

$result = mysql_query($sql) or die(mysql_error()); if(mysql_num_rows($result)==1){

return TRUE; // TRUE jika ada } else{

return FALSE; // jika tidak ada FALSE }

}

Function Pemenggalan Inflection Suffixes

public function Hapus_partikel($kata){ $kataAsal = $kata;

$kata = $this->Hapus_awalan($kata); if($this->cekKamus($kata)){ // Cek Kamus

return $kataAsal; }else{

if(preg_match('/([km]u|nya|[kl]ah|pun)$/',$kata,$this->inflec)){ $kata_stem1 = preg_replace('/([km]u|nya|[kl]ah|pun)$/','',$kata); $inflec = $this->inflec[count($this->inflec)-1];

if($this->cekKamus($kata_stem1)){ // Cek Kamus $inflec = $this->inflec;

$this->inflec = $this->inflec[count($this->inflec)-1]; return $kata_stem1;

}

if(preg_match('/([klt]ah|pun)$/',$kata,$this->inflec)){

if(preg_match('/([km]u|nya)$/',$kata_stem1,$this->inflec)){ $kata_stem2 = preg_replace('/([km]u|nya)$/','',$kata_stem1); if($inflec == $this->inflec[count($this->inflec)-1] ) $inflec = ""; $this->inflec = $this->inflec[count($this->inflec)-1].$inflec; return $kata_stem2;

} else{

$this->inflec = $inflec; }

} else{

$this->inflec = $inflec; }

if($this->cekKamus($kata_stem1,$db)->found){ return $kata_stem1;

}else{

$kata_stem2 = $this->Hapus_awalan($kata_stem1); if($this->cekKamus($kata_stem2)){ // Cek Kamus

return $kata_stem1; }else{

(4)

} } }

return $kataAsal; }

}

Function Untuk Pemenggalan Inflection Prefix

public function Hapus_awalanku($kata){ $kataAsal = $kata;

if(preg_match('/^(ku)\S{1,}/',$kata,$this->prefin)){ $kata_stem1 = preg_replace('/^(ku)/','',$kata);

$this->prefin = $this->prefin[count($this->prefin)-1]; return $kata_stem1;

}

return $kataAsal; }

Function Untuk Kombinasi Awalan dan Akhiran yang tidak diizinkan public function Cek_awalan_dilarang($kata){

if(preg_match('/^(be)[[:alpha:]]+(i)$/',$kata)){ // be- dan -i return TRUE;

}

if(preg_match('/^(di)[[:alpha:]]+(an)$/',$kata)){ // di- dan -an return TRUE;

}

if(preg_match('/^(ke)[[:alpha:]]+(i|kan)$/',$kata)){ // ke- dan -i,-kan return TRUE;

}

if(preg_match('/^(me)[[:alpha:]]+(an)$/',$kata)){ // me- dan -an return TRUE;

}

if(preg_match('/^(se)[[:alpha:]]+(i|kan)$/',$kata)){ // se- dan -i,-kan return TRUE;

}

return FALSE; }

Function Untuk Pemenggalan Akhiran

public function Hapus_akhiran($kata){ $kataAsal = $kata;

if(preg_match('/(kan)$/',$kata,$this->suffix)){ // Cek Suffixes if(!preg_match('/^(eret)|(ret)(a)(kan)$/',$kata)){

$kata_stem1 = preg_replace('/(kan)$/','',$kata); if($this->cekKamus($kata_stem1)){ // Cek Kamus

$this->suffix = $this->suffix[count($this->suffix)-1]; return $kata_stem1;

(5)

}

if(preg_match('/(an|i)$/',$kata,$this->suffix)){ // cek -kan $kata_stem2 = preg_replace('/(an|i)$/','',$kata); if($this->cekKamus($kata_stem2)){ // Cek Kamus

$this->suffix = $this->suffix[count($this->suffix)-1]; return $kata_stem2;

} }

if($this->Cek_awalan_dilarang($kata)){ $this->debug($kata);

return $kataAsal; }

return $kataAsal;

}

Function Untuk Pemenggalan Awalan

public function Hapus_awalan($kata){ $kataAsal = $kata;

/* --- Tentukan Tipe Awalan ---*/

if(preg_match('/^(di|[ks]e)\S{1,}/',$kata,$this->prefix)){ // Jika di-,ke-,se- $kata_stem1 = preg_replace('/^(di|[ks]e)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^([tmbp]e)/'/*>>>'/^([tmbp]e)\S{1,}/'<<<*/,$kata,$this->prefix)){ //Jika awalannya adalah “te-”, “me-”, “be-”, atau “pe-”

/*--- Awalan “be-”, ---*/ if(preg_match('/^(be)\S{1,}/',$kata,$this->prefix)){ // Jika awalan “be-”,

if(preg_match('/^(ber)[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 1. $kata_stem1 = preg_replace('/^(ber)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(ber)/','r',$kata); if($this->cekKamus($kata_stem1)){

(6)

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(ber)[^aiueor][[:alpha:]](?!er)\S{1,}/',$kata,$this->prefix)){ //aturan 2.

$kata_stem1 = preg_replace('/^(ber)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2; }

}

if(preg_match('/^(ber)[^aiueor][[:alpha:]]er[aiueo]\S{1,}/',$kata,$this->prefix)){ //aturan 3.

$kata_stem1 = preg_replace('/^(ber)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^belajar\S{0,}/',$kata,$this->prefix)){ //aturan 4. $kata_stem1 = preg_replace('/^(bel)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(be)[^aiueolr]er[^aiueo]\S{1,}/',$kata,$this->prefix)){ //aturan 5.

$kata_stem1 = preg_replace('/^(be)/','',$kata); if($this->cekKamus($kata_stem1)){

(7)

return $kata_stem1; }

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} } }

/*---end “be-”, ---*/ /*--- Awalan “te-”, ---*/ if(preg_match('/^(te)\S{1,}/',$kata,$this->prefix)){ // Jika awalan “te-”,

if(preg_match('/^(terr)\S{1,}/',$kata,$this->prefix)){ return $kata;

}

if(preg_match('/^(ter)[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 6. $kata_stem1 = preg_replace('/^(ter)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(ter)/','r',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(ter)[^aiueor]er[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 7.

$kata_stem1 = preg_replace('/^(ter)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

(8)

$kata_stem1 = preg_replace('/^(ter)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(te)[^aiueor]er[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 9.

$kata_stem1 = preg_replace('/^(te)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

}

/*---end “te-”, ---*/ /*--- Awalan “me-”, ---*/

if(preg_match('/^(me)/'/*'/^(me)\S{1,}/'*/,$kata,$this->prefix)){ // Jika awalan “me-”,

if(preg_match('/^(me)[lrwyv][aiueo]/',$kata,$this->prefix)){ // aturan 10 $kata_stem1 = preg_replace('/^(me)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(mem)[bfvp]/',$kata,$this->prefix)){ // aturan 11. /*--- cek luluh p- ---*/

$kata_stem1 = preg_replace('/^(mem)/','p',$kata); // luluh p- if($this->cekKamus($kata_stem1)){

return $kata_stem1; }

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

(9)

$kata_stem1 = preg_replace('/^(mem)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

/*if(preg_match('/^(mempe)\S{1,}/',$kata,$this->prefix)){ // aturan 12 $kata_stem1 = preg_replace('/^(mem)/','pe',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2; }

}*/

if (preg_match('/^(mem)((r[aiueo])|[aiueo])\S{1,}/', $kata,$this->prefix)){//aturan 13

$kata_stem1 = preg_replace('/^(mem)/','p',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(mem)/','m',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(men)[cdjzt]\S{1,}/',$kata,$this->prefix)){ // aturan 14. $kata_stem1 = preg_replace('/^(men)/','',$kata);

(10)

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if (preg_match('/^(men)[aiueo]\S{1,}/',$kata,$this->prefix)){//aturan 15 $kata_stem1 = preg_replace('/^(men)/','n',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(men)/','t',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(meng)[ghqk]\S{1,}/',$kata,$this->prefix)){ // aturan 16. $kata_stem1 = preg_replace('/^(meng)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(meng)[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 17 $kata_stem1 = preg_replace('/^(meng)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

(11)

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(meng)/','k',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(menge)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1];

return $kata_stem1; }

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(meny)[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 18. $kata_stem1 = preg_replace('/^(meny)/','s',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(me)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(me)/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/^(me)/','',$kata); if($this->cekKamus($kata_stem1)){

(12)

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

/*--- cek luluh t- ---*/

$kata_stem1 = preg_replace('/^(men)/','t',$kata); // luluh t-

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

} }

/*---end “me-”, ---*/

/*--- Awalan “pe-”, ---*/ if(preg_match('/^(pe)\S{1,}/',$kata,$this->prefix)){ // Jika awalan “pe-”,

if(preg_match('/^(pe)[wy]\S{1,}/',$kata)){ // aturan 20. if(preg_match('/^(pe)[wyr]\S{1,}/',$kata,$this->prefix)){

$kata_stem1 = preg_replace('/^(pe)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} } }

if(preg_match('/^(per)[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 21 $kata_stem1 = preg_replace('/^(per)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

(13)

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(per)[^aiueor][[:alpha:]](?!er)\S{1,}/',$kata,$this->prefix)){ // aturan 23

$kata_stem1 = preg_replace('/^(per)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(per)[^aiueor][[:alpha:]](er)[aiueo]\S{1,}/',$kata,$this->prefix)){ //aturan24

$kata_stem1 = preg_replace('/^(per)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(pem)[bfv]\S{1,}/',$kata,$this->prefix)){ // aturan 25 $kata_stem1 = preg_replace('/^(pem)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

(14)

$kata_stem1 = preg_replace('/^(pem)/','p',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(pem)(r[aiueo]|[aiueo])\S{1,}/',$kata,$this->prefix)){ // aturan 26

$kata_stem1 = preg_replace('/^(pem)/','m',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(pem)/','p',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(pen)[cdjzt]\S{1,}/',$kata,$this->prefix)){ // aturan 27 $kata_stem1 = preg_replace('/^(pen)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

break; }else{

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

(15)

if(preg_match('/^(pen)[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 28 $kata_stem1 = preg_replace('/^(pen)/','n',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(pen)/','t',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(peng)[^aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 29 $kata_stem1 = preg_replace('/^(peng)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(peng)[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 30 $kata_stem1 = preg_replace('/^(peng)/','',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

(16)

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(penge)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(peny)[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 31 $kata_stem1 = preg_replace('/^(peny)/','s',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

}

$kata_stem1 = preg_replace('/^(pe)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(pel)[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 32 $kata_stem1 = preg_replace('/^(pel)/','l',$kata);

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

(17)

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if (preg_match('/^(pelajar)\S{0,}/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/^(pel)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(pe)[^rwylmn]er[aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 33

$kata_stem1 = preg_replace('/^(pe)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(pe)[^rwylmn](?!er)\S{1,}/',$kata,$this->prefix)){ // aturan 34

$kata_stem1 = preg_replace('/^(pe)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(pe)[^aiueor]er[^aiueo]\S{1,}/',$kata,$this->prefix)){ // aturan 36

(18)

if($this->cekKamus($kata_stem1)){ $this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} } } }

/*---end “pe-”, ---*/

/*--- Awalan “memper-”, ---*/ if(preg_match('/^(memper)\S{1,}/',$kata,$this->prefix)){

$kata_stem1 = preg_replace('/^(memper)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem2;

}

//*-- Cek luluh -r ---

$kata_stem1 = preg_replace('/^(memper)/','r',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(mempel)\S{1,}/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/^(mempel)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem2;

}

(19)

$kata_stem1 = preg_replace('/^(mempel)/','l',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(menter)\S{1,}/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/^(menter)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3);

return $kata_stem1; }

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem2;

}

//*-- Cek luluh -r ---

$kata_stem1 = preg_replace('/^(menter)/','r',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(member)\S{1,}/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/^(member)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem2;

}

//*-- Cek luluh -r ---

$kata_stem1 = preg_replace('/^(member)/','r',$kata); if($this->cekKamus($kata_stem1)){

(20)

return $kata_stem1; }

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

/*---end “diper-”, ---*/ if(preg_match('/^(diper)\S{1,}/',$kata,$this->prefix)){

$kata_stem1 = preg_replace('/^(diper)/','',$kata); if($this->cekKamus($kata_stem1)){

$prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem2;

}

/*-- Cek luluh -r ---*/

$kata_stem1 = preg_replace('/^(diper)','r',$kata); if($this->cekKamus($kata_stem1)){

$prefix = $this->prefix;

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$prefix = $this->prefix;

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

/*---end “diper-”, ---*/ /*---end “diter-”, ---*/ if(preg_match('/^(diter)\S{1,}/',$kata,$this->prefix)){

$kata_stem1 = preg_replace('/^(diter)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem2;

}

/*-- Cek luluh -r ---*/

(21)

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

/*---end “diter-”, ---*/ /*---end “dipel-”, ---*/ if(preg_match('/^(dipel)\S{1,}/',$kata,$this->prefix)){

$kata_stem1 = preg_replace('/^(dipel)/','l',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem2;

}

/*-- Cek luluh -l---*/

$kata_stem1 = preg_replace('/^(dipel)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

/*---end “dipel-”, ---*/

/*---kata “terpelajar”(kasus khusus), --- ----*/

if(preg_match('/terpelajar/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/terpel/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

/*---end “terpelajar”-”, ---*/

(22)

if(preg_match('/seseorang/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/^(sese)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = 'suatu';//$this->prefix[1]; return $kata_stem1; }

}

/*---end seseorang-”, ---*/ if(preg_match('/^(diber)\S{1,}/',$kata,$this->prefix)){

$kata_stem1 = preg_replace('/^(diber)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem2;

}

/*-- Cek luluh -l---*/

$kata_stem1 = preg_replace('/^(diber)/','r',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(keber)\S{1,}/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/^(keber)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem2;

}

/*-- Cek luluh -l---*/

$kata_stem1 = preg_replace('/^(keber)/','r',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

(23)

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(keter)\S{1,}/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/^(keter)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2);

return $kata_stem1; }

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,2)." ".substr($this->prefix[1],2); return $kata_stem2;

}

/*-- Cek luluh -l---*/

$kata_stem1 = preg_replace('/^(keter)/','r',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix[1]; return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix[1]; return $kata_stem2;

} }

if(preg_match('/^(berke)\S{1,}/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/^(berke)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem1;

}

$kata_stem2 = $this->Hapus_akhiran($kata_stem1); if($this->cekKamus($kata_stem2)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem2;

} }

if(preg_match('/^(berpeng)\S{1,}/',$kata,$this->prefix)){ $kata_stem1 = preg_replace('/^(berpeng)/','',$kata); if($this->cekKamus($kata_stem1)){

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem1;

}

(24)

$this->prefix = $this->prefix;

$this->prefix = substr($this->prefix[1],0,3)." ".substr($this->prefix[1],3); return $kata_stem2;

} }

/*---end "berke-"---*/

/* --- Cek Ada Tidaknya Prefik/Awalan (“di-”, “ke-”, “se-”, “te-”, “be-”, “me-”, atau “pe-”) ---*/

if(preg_match('/^(di|[kstbmp]e)\S{1,}/',$kata,$this->prefix) == FALSE){ return $kataAsal;

}

Referensi

Dokumen terkait

Maka dari itu diperlukan bahan restorasi yang memiliki efek samping yang minimal yaitu resin komposit. Resin komposit yang saat ini dikembangkan adalah resin komposit nano yaitu

fotokopi kartu keluarga ayah atau ibu warga negara Indonesia... awak Alat

Menimbang, bahwa setelah memperhatikan segala uraian dalam berita acara sidang, pertimbangan hukum dan amar putusan sebagaimana tercantum di dalam Putusan

Agar kegiatan rehabilitasi dapat mencapai keberhasilan dalam perbaikan sifat kimia tanah, maka upaya-upaya pengelolaan lebih lanjut perlu dilakukan, upaya-upaya pengelolaan

[r]

54 Tahun 2010 tentang Pengadaan Barang dan Jasa Pemerintah, Surat Penetapan Pemenang Pelelangan Pengadaan/Pemasangan Roll O’ Pact Kementerian Agama Tahun Anggaran 2011 Nomor

dapat menggunakan waktu sisanya untuk mengerjakan apapun yang anda suka, tetapi jika anda tidak dapat menyelesaikan dalam waktu yang telah direncanakan maka anda harus mengambil

Penelitian ini dilakukan dengan mesin pengering menggunakan rak yang berputar (rotari), dimana rak yang berputar ini akan memutar lada yang ada didalamnya selama