Package strings dan strconv di Golang


Setelah sebelumnya membahas fmt
, errors
, os
, dan flag
, kali ini kita akan membahas dua package penting lainnya dalam standard library Go, yaitu strings
dan strconv
. Keduanya sangat berguna untuk memproses dan memanipulasi string dan konversi data โ kebutuhan yang sangat umum dalam hampir semua aplikasi.
1. Package strings
โ Manipulasi String
Package strings
berisi fungsi-fungsi untuk memanipulasi dan memeriksa string. Ini sangat membantu saat kamu bekerja dengan data teks, input dari user, atau saat parsing data.
๐ฆ Import
import "strings"
โ๏ธ Fungsi-Fungsi Umum strings
Fungsi | Deskripsi |
strings.Contains(s, substr) | Cek apakah s mengandung substr |
strings.HasPrefix(s, prefix) | Cek apakah s diawali dengan prefix |
strings.HasSuffix(s, suffix) | Cek apakah s diakhiri dengan suffix |
strings.ToLower(s) | Ubah ke huruf kecil semua |
strings.ToUpper(s) | Ubah ke huruf besar semua |
strings.Split(s, sep) | Pecah string berdasarkan separator |
strings.Join([]string, sep) | Gabungkan slice string menjadi satu string |
strings.ReplaceAll(s, old, new) | Ganti semua old dengan new |
strings.TrimSpace(s) | Hapus spasi di awal dan akhir string |
๐งช Contoh Penggunaan
package main
import (
"fmt"
"strings"
)
func main() {
teks := " Hello Golang World! "
fmt.Println(strings.Contains(teks, "Golang")) // true
fmt.Println(strings.HasPrefix(teks, "Hello")) // false (ada spasi di awal)
fmt.Println(strings.ToLower(teks)) // " hello golang world! "
fmt.Println(strings.TrimSpace(teks)) // "Hello Golang World!"
fmt.Println(strings.ReplaceAll(teks, "Golang", "Go")) // ganti Golang โ Go
daftar := "apel,pisang,jeruk"
buah := strings.Split(daftar, ",")
fmt.Println(buah) // [apel pisang jeruk]
gabung := strings.Join(buah, " | ")
fmt.Println(gabung) // "apel | pisang | jeruk"
}
2. Package strconv
โ Konversi Angka dan String
Package strconv
sangat berguna untuk mengubah nilai dari string ke angka, dan sebaliknya. Ini sering dipakai saat membaca input, bekerja dengan API, atau menyimpan data.
๐ฆ Import
import "strconv"
๐ Fungsi-Fungsi Umum strconv
Fungsi | Deskripsi |
strconv.Itoa(int) | Konversi int โ string |
strconv.Atoi(string) | Konversi string โ int |
strconv.ParseBool(string) | Konversi string โ bool ("true" , "false" ) |
strconv.FormatFloat(float64, fmt, prec, bitSize) | Konversi float โ string |
strconv.ParseFloat(string, bitSize) | Konversi string โ float64 |
๐งช Contoh Penggunaan
package main
import (
"fmt"
"strconv"
)
func main() {
// int ke string
umur := 25
s := strconv.Itoa(umur)
fmt.Println("Umur saya adalah " + s)
// string ke int
angka, err := strconv.Atoi("123")
if err == nil {
fmt.Println("Hasil:", angka+10)
}
// string ke bool
b, _ := strconv.ParseBool("true")
fmt.Println("Boolean:", b)
// float ke string
f := 3.14159
fs := strconv.FormatFloat(f, 'f', 2, 64)
fmt.Println("Pi:", fs)
// string ke float
pi, _ := strconv.ParseFloat("3.14", 64)
fmt.Println("Float:", pi*2)
}
๐ Tips Pemula
Selalu cek error saat konversi string ke angka (
Atoi
,ParseFloat
, dll).Gunakan
strings.TrimSpace()
sebelum parsing angka dari input user.strings.Split()
danJoin()
sangat berguna saat parsing CSV atau query.strconv.Itoa()
= Integer to ASCII (alias string).
Kesimpulan
Dua package ini adalah fondasi penting untuk manipulasi data teks dan angka:
Package | Fungsi Utama |
strings | Proses dan ubah string |
strconv | Konversi antar string dan tipe data (int, float, bool) |
Dengan menguasai keduanya, kamu bisa menangani input/output, parsing data, dan memformat informasi dengan lebih fleksibel.
Subscribe to my newsletter
Read articles from Ajitama Dev directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
