Lompat ke konten Lompat ke sidebar Lompat ke footer

Pisahkan Arduino String Jadi Array Kode Program

Split String Arduino

Bismillahirrahmanirrahim. Memisahkan kata dari string (teks) disebut juga dengan Split String. Dalam kondisi tertentu, kita butuh memisahkan kata dari string dimana kata tersebut dapat kita gunakan untuk membandingkan suatu kondisi. Oleh karena itu, pada artikel ini saya akan menjelaskan cara memisahkan string pada arduino string jadi array split disertai kode program.

Dalam memisahkan kata dari string, kita harus menentukan karakter apa yang menjadi pemisah antara kata, apakah itu berupa titik, koma, spasi atau karakter lainnya.


Hasil yang diharapkan

Pada contoh artikel ini, sebagai contoh saya akan memisahkan kata berdasarkan spasi. Kemudian kata tersebut akan saya masukkan ke dalam array.

Sebagai contoh, saya memasukkan String dengan:

Input = "Testing untuk split string", 

Output =

  • Array 0 = Testing
  • Array 1 = untuk
  • Array 2 = split
  • Array 3 = string
Dengan kondisi diatas, kita dapat dengan mudah membuat kondisi perbandingan, misalnya if(array[0] == "Testing"){lakukan sesuatu}.

Kode Program

Kode pogram untuk membagi teks dengan arduino diatas, membutuhkan beberapa tahapan. Pertama, ambil data sebagai string, lalu cek spasinya. Jika dapat masukkan kata sebelumnya kedalam array. Perhatikan kode berikut:

String kata[10]; //maksimum array adalah 10
String teks;
String gabungKata;
int jumlahKata;

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  while (Serial.available() > 0)
  {
    teks = Serial.readString();

    for (int i = 0; i < teks.length() - 1; i++)
    {
      // pisahkan berdasarkan spasi
      kata[i] = ambilKata(teks, ' ', i);

      if (kata[i] != NULL)
      {
        Serial.println((String)"Kata " + i + " = " + kata[i]);
      }
    }
  }
}

String ambilKata(String teks, char pemisah, int urutan)
{
  jumlahKata = 0;
  gabungKata = "";

  for (int i = 0; i < teks.length() - 1; i++)
  {

    if (teks[i] == pemisah)
    {
      jumlahKata++;
    }

    else if (jumlahKata == urutan)
    {
      gabungKata.concat(teks[i]);
    }

    else if (jumlahKata > urutan)
    {
      return gabungKata;
      break;
    }
  }

  return gabungKata;
}

Untuk menampilkan hasil ke Serial monitor, kode diatas telah menggunakan Serial Print One Line dan concat() untuk menggabungkan string.

Jika kode split string to array diatas selesai di upload ke Arduino board, buka terminal dan ketikkan sebuah kalimat yang mengandung spasi. Pastikan anda memilih opsi kiriman sebagai Newline, maka anda akan melihat hasilnya adalah sebagai berikut:

Arduino String Jadi Array Split Kode Program

Semoga kode singkat Arduino String Jadi Array ini dapat bermanfaat bagi anda semua.

Terima kasih telah berkunjung.

Posting Komentar untuk "Pisahkan Arduino String Jadi Array Kode Program"