Panduan Linux

Menggunakan Regex dan JavaScript di Node Function n8n

Halo, gais! Mau tau gimana caranya mengoptimalkan workflow otomatisasi kamu dengan menggunakan Regex dan JavaScript di Node Function n8n? Tenang, kali ini gue bakal bahas gimana cara memanfaatkan kekuatan Regex dan JavaScript di n8n untuk membuat pekerjaan kita lebih cepat dan efisien.

Apa itu n8n?

n8n adalah alat otomatisasi workflow berbasis node yang open-source. Kamu bisa mengintegrasikan berbagai aplikasi dan layanan tanpa ribet. Salah satu fitur keren n8n adalah Node Function, di mana kamu bisa menjalankan kode JavaScript atau ekspresi reguler (Regex) untuk memanipulasi data. Nah, sekarang kita akan eksplor gimana cara menggabungkan JavaScript dan Regex di Node Function n8n.

Mengapa Harus Menggunakan Regex dan JavaScript?

Sebelum lanjut, gue kasih tau dulu nih, Regex (Regular Expressions) itu berguna banget untuk melakukan pencocokan pola dalam teks. Sedangkan JavaScript adalah bahasa pemrograman yang fleksibel dan powerful. Gabungan keduanya bisa membuat kamu bisa melakukan banyak hal, seperti validasi data, ekstraksi informasi, penggantian teks, dan masih banyak lagi.

Di n8n, kamu bisa menggunakan Node Function untuk menjalankan kode JavaScript dalam workflow kamu. Ini sangat berguna buat memanipulasi data, menghitung nilai, atau melakukan logika pemrosesan.

Contoh kasus, gue punya data dari node sebelumnya yang berisi waktu dalam format YYYY-MM-DD dan gue mau ekstrak tahunnya aja. Caranya gimana? Nah, berikut kode JavaScript yang bisa kamu tulis di Node Function n8n:

// Ambil tanggal dari node sebelumnya
const date = items[0].json.date; // Misalnya '2022-01-01'
const year = date.split('-')[0];

// Setel nilai hasil ekstraksi ke output
return [{json: { year: year }}];

Di sini, kita menggunakan metode split() untuk memecah string tanggal berdasarkan tanda - dan mengambil elemen pertama ([0]) yang merupakan tahun.

Menggunakan Regex di JavaScript

Sekarang, gimana kalo kita mau menggunakan Regex untuk tujuan yang sama? Berikut caranya:

const date = items[0].json.date; // Misalnya '2022-01-01'
const year = date.match(/^(\d{4})-\d{2}-\d{2}$/)[1];

return [{json: { year: year }}];

Regex /(\d{4})-\d{2}-\d{2}/ mencari pola tahun (YYYY) dengan (\d{4}), diikuti oleh -\d{2}-\d{2}. Method match() mengembalikan array yang berisi kecocokan, dan kita bisa ambil tahunnya dengan [1].

Contoh Lain: Validasi Alamat Email

Biar lebih jelas, gue kasih contoh lain. Misalnya, kamu mau validasi alamat email dengan Regex dan JavaScript. Kodenya bisa seperti ini:

const email = items[0].json.email; // Misalnya 'ajang@example.com'
const isValidEmail = /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);

return [{json: { isValidEmail: isValidEmail }}];

Di sini, Regex /^[^\s@]+@[^\s@]+\.[^\s@]+$/ digunakan untuk memeriksa apakah string tersebut benar-benar alamat email atau nggak. Metode test() akan mengembalikan true jika string sesuai pola email.

Menangani Banyak Item

Kalo workflow kamu mengirimkan banyak item, kamu bisa pakai forEach untuk mengiterasi dan memproses setiap item. Contohnya gini:

const newItems = [];

items.forEach(item => {
  const date = item.json.date;
  const year = date.split('-')[0];
  newItems.push({json: { year: year }});
});

return newItems;

Di sini, kita looping tiap item, memecah tanggal, dan memasukkannya ke dalam array baru (newItems) sebagai output.

Untuk mengoptimalkan penggunaan Regex dan JavaScript di Node Function n8n, pastikan kamu memahami dasar-dasarnya. Coba eksperimen dengan kasus penggunaan sederhana dulu, lalu lanjut ke yang lebih kompleks. Jangan lupa untuk mencoba-coba ekspresi reguler di situs seperti RegExr sebelum kamu implementasikan di n8n.

Bagaimana? Seru, kan? Sekarang kamu bisa lebih jago dalam mengotomatisasi workflow kamu dengan n8n sambil menggunakan Regex dan JavaScript. Selamat mencoba dan semoga bermanfaat!

#N8n #AI