golang擷取中文字串

2021-10-24 21:36:21 字數 519 閱讀 7461

1.問題:

在golang中可以通過切片擷取乙個陣列或字串,但是當擷取的字串是中文時,可能會出現的問題是:由於中文乙個字不只是由乙個位元組組成,所以直接通過切片可能會把乙個中文字的編碼截成兩半,結果導致最後乙個字元是亂碼。

例如:想要擷取前四個字

name := "我是胡八一"

fmt.println("name[:4] = ",name[:4])

執行後得到的結果會是這樣的:

name[:4] =  我?
2.解決方法:

先將其轉為rune,再擷取後,轉會string

namerune := rune(name)

fmt.println("string(namerune[:4]) = ",string(namerune[:4]))

執行結果:

string(namerune[:4]) =  我是胡八

golang擷取中文字串

1.問題 在golang中可以通過切片擷取乙個陣列或字串,但是當擷取的字串是中文時,可能會出現的問題是 由於中文乙個字不只是由乙個位元組組成,所以直接通過切片可能會把乙個中文字的編碼截成兩半,結果導致最後乙個字元是亂碼。例如 想要擷取前四個字 fmt.println name 4 name 4 執行...

PHP 中文字串擷取

本文提供兩種方法實現中文字串的擷取 1.使用系統提供的 mb substr 或iconv substr 函式 php.ini 配置檔案中的 mbstring 擴充套件要開啟才能使用 函式說明 string mb substr string str,int start int length null ...

Python擷取中文字串

在gbk編碼下,請編寫乙個擷取字串的函式,輸入為乙個字串和位元組數,輸出為按位元組擷取的字串,但是要保證漢字不被截半個,同時忽略字串中的數字後輸出最終結果 coding gbk import re deffunc s,length g join re.findall r d s 這裡也可以用g fi...