unicode
في تطوير لغة Go، اقتطاع السلاسل عملية متكررة، خاصة عند التعامل مع خليط من الصينية والإنجليزية يجب الانتباه لمسائل الترميز. ستستعرض هذه المقالة 4 طرق رئيسية لاقتطاع السلاسل في لغة Go، مع أمثلة برمجية لشرح النقاط التقنية.
مخطط المعالجة الآمنة لـ Unicode
اقتطاع آمن على مستوى الأحرف من خلال التحويل إلى []rune:
go
func main() {
str := "Hello, 世界!"
runes := []rune(str)
// اقتطاع آمن على مستوى الأحرف
sub3 := string(runes[7:9])
fmt.Println("اقتطاع آمن للصينية:", sub3) // الإخراج: 世界
}المقارنة التقنية:
| المخطط | التعقيد الزمني | استهلاك الذاكرة | سيناريو الاستخدام |
|---|---|---|---|
| شريحة البايت | O(1) | منخفض | سلاسل ASCII نقيدة |
| تحويل []rune | O(n) | عالي | سلاسل تحتوي أحرف متعددة البايت |
