Tantangan
Tulis fungsi yang mengambil argumen yang merupakan kata kerja, dan mengembalikan bentuk lampau kata kerja. (Asumsikan bahwa kata kerjanya teratur)
Waktu lampau
Catatan: anggap y bukan konsonan atau vokal.
Biasanya, hanya menambahkan edsetelah akhir kata kerja membuat bentuk lampau kata kerja.
Contoh: jump→ jumped, ask→asked
Namun, ada aturan lain.
Jika karakter terakhir dari kata kerja yang diberikan
e, hanya menambahkand.Contoh:
love→loved,move→movedJika kata kerja diakhiri dengan konsonan +
y, maka ubahymenjadii, dan tambahkaned.Contoh:
study→studied,cry→criedNamun, jika kata kerjanya diakhiri dengan vokal +
y, maka tambahkan sajaed.Contoh:
play→played,stay→stayedJika kata kerja diakhiri dengan vokal dan konsonan, maka tulis konsonan sekali lagi, dan tambahkan
ed.Contoh:
stop→stopped,plan→plannedNamun, jika kata kerja diakhiri dengan banyak vokal + konsonan atau vokal tunggal + banyak konsonan, maka tambahkan saja
ed.Contoh:
look→looked,jump→jumped
Ada lebih banyak aturan, tetapi mari kita perhatikan aturan di atas saja. Misalnya, sesuai aturan di atas, visit→ visitted.
Pemenang
Karena ini adalah kode golf, kode terpendek yang dengan benar mengembalikan bentuk lampau menang.
Contoh (JS, 127)
function f(x){return x.replace(/([^aeiouy])y$/,'$1i').replace(/([^aeiouy][aeiou])([^aeiouy])$/,'$1$2$2').replace(/e$/,'')+'ed'}