Alternatif Escape Character dalam Java (replaceAll)

Beberapa hari yang lalu saya terbentur masalah untuk dapat “meloloskan” character satu-petik (‘) dalam String yang akan dimasukkan ke dalam database mySQL.

Ada beberapa cara yang memungkinkan. Mulai dari parsing per-character hingga utak-atik mySQL. Ribet. Di C ada mysql_real_escape_string(String). Di Javascript ada escape(String). Nah, pasti di Java juga ada solusinya dong!

Browsing.. Browsing.. Eh, saya menemukan method ini di Java : replaceAll(). Ini adalah method dari kelas String. Singkatnya, kita bisa mengubah character tertentu menjadi character lain dalam satu String.

Langsung ke contoh ya. Misalnya saya mau “meloloskan” kalimat : Hasyim Asy’ari (ada satu petik setelah Asy). Caranya dengan mengubah satu-petik(‘) menjadi dua-petik(‘ ‘). Dua-petik, petik yang pertama berfungsi untuk memberitahu mySQL bahwa petik yang selanjutnya itu adalah character yang perlu dibaca, bukan penanda awal/akhir character. Ini code-nya :


String nama = "Hasyim Asy'ari";

nama.replaceAll(" ' ", " '' ");

Atau misalkan ingin mengubah seluruh character slash (\) menjadi doubleslash(\\), cukup dengan :


nama.replaceAll("\\\\", "\\\\\\\\");

Kesimpulannya :


nama.replaceAll(characterYangInginDiganti, characterPenggantinya);

Sederhana.

Semoga bermanfaat. 🙂

Terakhir diubah : 23 Desember 2009

Iklan

7 thoughts on “Alternatif Escape Character dalam Java (replaceAll)

  1. kk numpang nanya ya?? ganti \ jadi \\ kok replace allnya tanda \nya jadi banyak banget?aq pengen nyimpen alamat direktori dari java ke mysql pake file.getPath() tanda \nya ga kebaca.. 😀

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s