Aturan

Algoritma confix-stripping dasar: partikel, kata ganti milik, akhiran derivasional, lalu awalan derivasional dengan peluruhan.

44 dari 44 aturan belum diperiksa terhadap makalah sumber. Sitasinya menunjukkan tempat memeriksa, bukan bahwa sudah ada yang memeriksa. Jangan dikutip sebagai bersumber. Apa yang sudah diperiksa dan urutannya (GAPS.md)

Partikel

na96.partikel.lah

urutan 10belum diperiksa

Partikel -lah, imbuhan infleksional. Dibuang paling awal.

pola
^(.{2,})lah$
bacaan
$1
contoh
duduklahduduk
sumber
nazief1996langkah 2 — partikel

na96.partikel.kah

urutan 10belum diperiksa

Partikel -kah, imbuhan infleksional.

pola
^(.{2,})kah$
bacaan
$1
contoh
bukukahbuku
sumber
nazief1996langkah 2 — partikel

na96.partikel.tah

urutan 10belum diperiksa

Partikel -tah, imbuhan infleksional. Jarang dipakai dalam bahasa modern.

pola
^(.{2,})tah$
bacaan
$1
contoh
apatahapa
sumber
nazief1996langkah 2 — partikel

Kata ganti milik

na96.milik.ku

urutan 20belum diperiksa

Kata ganti milik -ku. Dibuang setelah partikel.

pola
^(.{2,})ku$
bacaan
$1
contoh
bukukubuku
sumber
nazief1996langkah 2 — kata ganti milik

na96.milik.mu

urutan 20belum diperiksa

Kata ganti milik -mu.

pola
^(.{2,})mu$
bacaan
$1
contoh
bukumubuku
sumber
nazief1996langkah 2 — kata ganti milik

na96.milik.nya

urutan 20belum diperiksa

Kata ganti milik -nya.

pola
^(.{2,})nya$
bacaan
$1
contoh
bukunyabuku
sumber
nazief1996langkah 2 — kata ganti milik

Akhiran derivasional

na96.akhiran.kan

urutan 30belum diperiksa

Akhiran derivasional -kan. Diperiksa sebelum -an, karena membuang -an lebih dahulu akan menyisakan huruf k.

pola
^(.{2,})kan$
bacaan
$1
contoh
hitungkanhitung
sumber
nazief1996langkah 3 — akhiran derivasional

na96.akhiran.an

urutan 40belum diperiksa

Akhiran derivasional -an.

pola
^(.{2,})an$
bacaan
$1
contoh
makananmakan
sumber
nazief1996langkah 3 — akhiran derivasional

na96.akhiran.i

urutan 50belum diperiksa

Akhiran derivasional -i.

pola
^(.{2,})i$
bacaan
$1
contoh
tanamitanam
sumber
nazief1996langkah 3 — akhiran derivasional

Awalan derivasional

na96.awalan.di

urutan 100belum diperiksa

Awalan di-. Pembuangan langsung, tanpa peluruhan.

pola
^di(.{2,})$
bacaan
$1
contoh
dibacabaca
sumber
nazief1996langkah 4 — awalan sederhana

na96.awalan.ke

urutan 101belum diperiksa

Awalan ke-. Pembuangan langsung.

pola
^ke(.{2,})$
bacaan
$1
contoh
ketuatua
sumber
nazief1996langkah 4 — awalan sederhana

na96.awalan.se

urutan 102belum diperiksa

Awalan se-. Pembuangan langsung.

pola
^se(.{2,})$
bacaan
$1
contoh
sebuahbuah
sumber
nazief1996langkah 4 — awalan sederhana

na96.awalan.be.berv

urutan 110belum diperiksa

berV… → ber-V… atau be-rV…. Dua bacaan: huruf r bisa milik awalan, bisa milik kata dasar. Inilah sumber keambiguan beruang.

pola
^ber([aiueo].*)$
bacaan
$1 | r$1
contoh
beruanguang(bacaan lain: ruang; kata dasar beruang juga ada di kamus)beruangruang
sumber
asian2005aturan 1

na96.awalan.be.bercap

urutan 111belum diperiksa

berCAP… → ber-CAP…, dengan C bukan r dan P bukan er.

pola
^ber(?![a-z][a-z]er)([^aiueor].*)$
bacaan
$1
contoh
bertemutemu
sumber
asian2005aturan 2

na96.awalan.be.bercaerv

urutan 112belum diperiksa

berCAerV… → ber-CAerV…, dengan C bukan r.

pola
^ber([^aiueor][a-z]er[aiueo].*)$
bacaan
$1
contoh
berdaerahdaerah
sumber
asian2005aturan 3

na96.awalan.be.belajar

urutan 113belum diperiksa

belajar → bel-ajar. Aturan khusus untuk satu kata; bel- bukan awalan produktif.

pola
^bel(ajar.*)$
bacaan
$1
contoh
belajarajar
sumber
asian2005aturan 4

na96.awalan.be.becerc

urutan 114belum diperiksa

beC1erC2… → be-C1erC2…, dengan C1 bukan r dan bukan l.

pola
^be([^aiueorl]er[^aiueo].*)$
bacaan
$1
contoh
bekerjakerja
sumber
asian2005aturan 5

na96.awalan.te.terv

urutan 120belum diperiksa

terV… → ter-V… atau te-rV…. Dua bacaan, seperti ber-.

pola
^ter([aiueo].*)$
bacaan
$1 | r$1
contoh
terangkatangkatterasarasa
sumber
asian2005aturan 6

na96.awalan.te.tercerv

urutan 121belum diperiksa

terCerV… → ter-CerV…, dengan C bukan r.

pola
^ter([^aiueor]er[aiueo].*)$
bacaan
$1
contoh
terperiksaperiksa
sumber
asian2005aturan 7

na96.awalan.te.tercp

urutan 122belum diperiksa

terCP… → ter-CP…, dengan C bukan r dan P bukan er.

pola
^ter(?![a-z]er)([^aiueor].*)$
bacaan
$1
contoh
tertutuptutup
sumber
asian2005aturan 8

na96.awalan.te.tecerc

urutan 123belum diperiksa

teC1erC2… → te-C1erC2…, dengan C1 bukan r.

pola
^te([^aiueor]er[^aiueo].*)$
bacaan
$1
contoh
teperdayaperdaya(bentuk yang jarang; dicatat apa adanya)
sumber
asian2005aturan 9

na96.awalan.me.melrwy

urutan 130belum diperiksa

me{l|r|w|y}V… → me-{l|r|w|y}V…. Tanpa peluruhan.

pola
^me([lrwy][aiueo].*)$
bacaan
$1
contoh
melihatlihat
sumber
asian2005aturan 10

na96.awalan.me.membfv

urutan 131belum diperiksa

mem{b|f|v}… → mem-{b|f|v}…. Huruf awal kata dasar tetap utuh.

pola
^mem([bfv].*)$
bacaan
$1
contoh
membacabaca
sumber
asian2005aturan 11

na96.awalan.me.mempe

urutan 132belum diperiksa

mempe… → mem-pe…. Kata dasar masih berawalan pe-, jadi iterasi berikutnya yang menanganinya.

pola
^mem(pe.*)$
bacaan
$1
contoh
mempelajaripelajari
sumber
asian2005aturan 12

na96.awalan.me.recode.mem

urutan 133peluruhanbelum diperiksa

memV… → me-mV… atau me-pV…. Peluruhan: huruf p luluh menjadi m. Dua bacaan, dan kamus yang memutuskan.

pola
^mem([aiueo].*)$
bacaan
m$1 | p$1
contoh
memukulpukul(p luluh menjadi m)memukulmukul
sumber
asian2005aturan 13

na96.awalan.me.mencdjz

urutan 134belum diperiksa

men{c|d|j|z}… → men-{c|d|j|z}….

pola
^men([cdjz].*)$
bacaan
$1
contoh
mencaricari
sumber
asian2005aturan 14

na96.awalan.me.recode.men

urutan 135peluruhanbelum diperiksa

menV… → me-nV… atau me-tV…. Peluruhan: huruf t luluh menjadi n.

pola
^men([aiueo].*)$
bacaan
n$1 | t$1
contoh
menulistulis(t luluh menjadi n)menulisnulis
sumber
asian2005aturan 15

na96.awalan.me.mengghq

urutan 136belum diperiksa

meng{g|h|q|k}… → meng-{g|h|q|k}…. Huruf awal tetap utuh.

pola
^meng([ghqk].*)$
bacaan
$1
contoh
menghitunghitung
sumber
asian2005aturan 16

na96.awalan.me.recode.meng

urutan 137peluruhanbelum diperiksa

mengV… → meng-V… atau meng-kV…. Peluruhan: huruf k luluh. Mengupas sendiri punya dua bacaan — upas dan kupas.

pola
^meng([aiueo].*)$
bacaan
$1 | k$1
contoh
mengupaskupas(k luluh)mengambilambil
sumber
asian2005aturan 17

na96.awalan.me.recode.meny

urutan 138peluruhanbelum diperiksa

menyV… → meny-sV…. Peluruhan: huruf s luluh menjadi ny. Hanya satu bacaan.

pola
^meny([aiueo].*)$
bacaan
s$1
contoh
menyapusapu(s luluh menjadi ny)
sumber
asian2005aturan 18

na96.awalan.me.mempv

urutan 139belum diperiksa

mempV… → mem-pV…, dengan V bukan e. Huruf p tidak luluh di sini.

pola
^mem(p[aiou].*)$
bacaan
$1
contoh
mempunyaipunyai
sumber
asian2005aturan 19

na96.awalan.pe.pewy

urutan 150belum diperiksa

pe{w|y}V… → pe-{w|y}V….

pola
^pe([wy][aiueo].*)$
bacaan
$1
contoh
pewariswaris
sumber
asian2005aturan 20

na96.awalan.pe.perv

urutan 151belum diperiksa

perV… → per-V… atau pe-rV…. Dua bacaan.

pola
^per([aiueo].*)$
bacaan
$1 | r$1
contoh
perusakrusakperasaasa
sumber
asian2005aturan 21

na96.awalan.pe.percap

urutan 152belum diperiksa

perCAP… → per-CAP…, dengan C bukan r dan P bukan er. Sejajar dengan aturan 2 untuk ber-.

pola
^per(?![a-z][a-z]er)([^aiueor].*)$
bacaan
$1
contoh
perdayadaya(aturan ini semula tidak ada; ketiadaannya ditemukan oleh perbandingan dengan Sastrawi)pertemuantemuan
sumber
asian2005aturan 22

na96.awalan.pe.pelajar

urutan 153belum diperiksa

pelajar → pel-ajar. Pengecualian, sepasang dengan belajar.

pola
^pel(ajar.*)$
bacaan
$1
contoh
pelajarajar
sumber
asian2005aturan 31, pengecualian

na96.awalan.pe.pelv

urutan 154belum diperiksa

pelV… → pe-lV…, kecuali pelajar.

pola
^pe(l[aiueo].*)$
bacaan
$1
contoh
pelarilari
sumber
asian2005aturan 31

na96.awalan.pe.pembfv

urutan 155belum diperiksa

pem{b|f|v}… → pem-{b|f|v}….

pola
^pem([bfv].*)$
bacaan
$1
contoh
pembacabaca
sumber
asian2005aturan 24

na96.awalan.pe.recode.pem

urutan 156peluruhanbelum diperiksa

pemV… → pe-mV… atau pe-pV…. Peluruhan p menjadi m, sejajar dengan mem-.

pola
^pem([aiueo].*)$
bacaan
m$1 | p$1
contoh
pemukulpukul
sumber
asian2005aturan 25

na96.awalan.pe.pencdjz

urutan 157belum diperiksa

pen{c|d|j|z}… → pen-{c|d|j|z}….

pola
^pen([cdjz].*)$
bacaan
$1
contoh
pencaricari
sumber
asian2005aturan 26

na96.awalan.pe.recode.pen

urutan 158peluruhanbelum diperiksa

penV… → pe-nV… atau pe-tV…. Peluruhan t menjadi n.

pola
^pen([aiueo].*)$
bacaan
n$1 | t$1
contoh
penulistulis
sumber
asian2005aturan 27

na96.awalan.pe.pengghq

urutan 159belum diperiksa

peng{g|h|q|k}… → peng-{g|h|q|k}….

pola
^peng([ghqk].*)$
bacaan
$1
contoh
penggaligali
sumber
asian2005aturan 28

na96.awalan.pe.recode.peng

urutan 160peluruhanbelum diperiksa

pengV… → peng-V… atau peng-kV…. Peluruhan k.

pola
^peng([aiueo].*)$
bacaan
$1 | k$1
contoh
pengupaskupaspengambilambil
sumber
asian2005aturan 29

na96.awalan.pe.recode.peny

urutan 161peluruhanbelum diperiksa

penyV… → peny-sV…. Peluruhan s menjadi ny.

pola
^peny([aiueo].*)$
bacaan
s$1
contoh
penyapusapu
sumber
asian2005aturan 30

na96.awalan.pe.pecp

urutan 162belum diperiksa

peCP… → pe-CP…, dengan C bukan r, w, y, l, m, n dan P bukan er.

pola
^pe(?![a-z]er)([^aiueorwylmn].*)$
bacaan
$1
contoh
pesuruhsuruh
sumber
asian2005aturan 33

Kombinasi awalan–akhiran yang tidak diizinkan

Dicek sebelum membuang awalan — PRD §3 langkah 4. Kalau cocok, pencarian berhenti, bukan dilanjutkan.
awalan ↓ / akhiran →-an-i-kan
be-Awalan be- tidak berpasangan dengan akhiran -i. (nazief1996tabel kombinasi awalan-akhiran yang tidak diizinkan)
di-Awalan di- tidak berpasangan dengan akhiran -an. (nazief1996tabel kombinasi awalan-akhiran yang tidak diizinkan)
ke-Awalan ke- tidak berpasangan dengan akhiran -i atau -kan. (nazief1996tabel kombinasi awalan-akhiran yang tidak diizinkan)Awalan ke- tidak berpasangan dengan akhiran -i atau -kan. (nazief1996tabel kombinasi awalan-akhiran yang tidak diizinkan)
me-Awalan me- tidak berpasangan dengan akhiran -an. (nazief1996tabel kombinasi awalan-akhiran yang tidak diizinkan)
se-Awalan se- tidak berpasangan dengan akhiran -i atau -kan. (nazief1996tabel kombinasi awalan-akhiran yang tidak diizinkan)Awalan se- tidak berpasangan dengan akhiran -i atau -kan. (nazief1996tabel kombinasi awalan-akhiran yang tidak diizinkan)
te-Awalan te- tidak berpasangan dengan akhiran -an. (nazief1996tabel kombinasi awalan-akhiran yang tidak diizinkan)

Sumber

  • nazief1996Bobby Nazief, Mirna Adriani (1996). Confix-Stripping: Approach to Stemming Algorithm for Bahasa Indonesia. Fakultas Ilmu Komputer, Universitas Indonesia.
  • asian2005Jelita Asian, Hugh E. Williams, S. M. M. Tahaghoghi (2005). Stemming Indonesian. Proceedings of the 28th Australasian Computer Science Conference.