نوع داده متنی (string) | گولنگ به زبان ساده

تاریخ انتشار:
نوع داده متنی (string) | گولنگ به زبان ساده
با نوع داده متنی در گولنگ آشنا می شویم و یاد میگیریم چطور با متغیرهای متنی کار کنیم.

نوع‌ رشته‌ای (string) برای ذخیره متن مورد استفاده قرار میگیرد. در گولنگ متن ها با استاندارد یونیکد و به صورت UTF8 نگهداری میشود.

Unicode یک استاندارد جهانی برای نمایش، ذخیره و تبادل کاراکترهای متنی است. این استاندارد هدفش این است که همه‌ی کاراکترهای موجود در تمامی زبان‌های زنده و مرده دنیا، به همراه علائم و نشانه‌ها را پوشش دهد.

Unicode به هر کاراکتر یک کد یکتا (code point) اختصاص می‌دهد. برای مثال، حرف A دارای کد یکتای U+0041 و کاراکتر ش در زبان فارسی دارای کد یکتای U+0634 است. Unicode فقط یک نقشه‌ی منطقی از کاراکترها به کدهای یکتا است و نحوه‌ی ذخیره‌سازی فیزیکی این کدها را مشخص نمی‌کند.

UTF-8 (که مخفف "8-bit Unicode Transformation Format" است) یک روش کدگذاری (encoding) برای ذخیره و انتقال کاراکترهای یونیکد است. یعنی روشی است که کدهای یکتای Unicode را به بایت‌های فیزیکی تبدیل می‌کند. UTF-8 از 1 تا 4 بایت برای نمایش هر کد یکتا استفاده می‌کند.

package main

import "fmt"

func main() {
    var name string = "John Doe"
    fmt.Println("Name:", name)
}

بعضی مواقع نیاز دارید چندین داده متنی رو به هم بچسبونید, برای اینکار میتونید از عملگر + استفاده کنید:

package main

import "log"

func main() {
	x := "Hello"
	y := ", World!"
	z := x + y

	log.Println(z)
}

داده های غیر متنی را نمی توان با استفاده از + به هم چسبوند, یکی از راه های چسبوندن داده های غیر متنی استفاده از پکیج fmt است:

package main

import "fmt"

func main() {
	a := "There are"
	b := 2
	c := "men in the room."

	d := fmt.Sprintf("%s %d %s", a, b, c)

	fmt.Println(d) // There are 2 men in the room.
}

رشته‌ها بخش مهمی از هر زبان برنامه‌نویسی هستند و در Go نیز ابزارهای متعددی برای کار با آن‌ها وجود دارد که در بخش های بعدی به صورت مفصل تری به آنها خواهیم پرداخت.


قسمت قبل: نوع داده بولین (boolean) | گولنگ به زبان ساده

قسمت بعد: نوع داده slice | گولنگ به زبان ساده