توابع رشته‌ای

توابع پرکاربرد پکیج strings: Contains، Split، Join، Replace، ToUpper و...

پکیج strings

توابع کار با رشته در پکیج استاندارد strings قرار دارند:

import "strings"

توابع پرکاربرد

تابعکاربردمثال
ToUpper(s)تبدیل به حروف بزرگstrings.ToUpper("go") → GO
ToLower(s)تبدیل به حروف کوچکstrings.ToLower("GO") → go
Contains(s, sub)آیا شامل زیررشته است؟Contains("سلام دنیا", "دنیا") → true
HasPrefix(s, pre)شروع با؟HasPrefix("test.jpg", "test") → true
HasSuffix(s, suf)پایان با؟HasSuffix("test.jpg", ".jpg") → true
Split(s, sep)تقسیم به آرایهSplit("a,b,c", ",") → [a b c]
Join(arr, sep)اتصال آرایهJoin([a b c], "-") → a-b-c
Replace(s, old, new, n)جایگزینیReplace("a-b", "-", "+", 1) → a+b
ReplaceAll(s, old, new)جایگزینی همهReplaceAll("a-b-c", "-", "+") → a+b+c
TrimSpace(s)حذف فاصله‌های دو طرفTrimSpace(" hi ") → hi
Trim(s, cut)حذف کاراکترهای مشخصTrim("**hi**", "*") → hi
Repeat(s, n)تکرار رشتهRepeat("ab", 3) → ababab
Index(s, sub)موقعیت زیررشتهIndex("hello", "l") → 2
Count(s, sub)تعداد تکرارCount("banana", "an") → 2
Fields(s)تقسیم با فاصلهFields("a b c") → [a b c]

مثال‌های عملی

بررسی و جستجو

s := "به لرنینگ سیتی خوش آمدید"

fmt.Println(strings.Contains(s, "سیتی"))    ← true
fmt.Println(strings.HasPrefix(s, "به"))     ← true
fmt.Println(strings.HasSuffix(s, "!"))      ← false
fmt.Println(strings.Count(s, "س"))          ← 2

تقسیم و اتصال

csv := "علی,25,تهران"
parts := strings.Split(csv, ",")
// parts = ["علی", "25", "تهران"]

joined := strings.Join(parts, " | ")
// "علی | 25 | تهران"

پاکسازی ورودی

input := "   سلام دنیا   "
clean := strings.TrimSpace(input)   ← "سلام دنیا"
ترکیب strings.Fields با strings.Join برای نرمال‌سازی فاصله‌ها عالی است: strings.Join(strings.Fields(s), " ")

این مبحث بخشی از دوره آموزش کامل گو است.

ابزارهای مرتبط