一、獲取字串長度的幾種方法
- 使用 bytes.count() 統計
- 使用 strings.count() 統計
- 將字串轉換為 rune 後呼叫 len 函式進行統計
- 使用 utf8.runecountinstring() 統計
例:
str:="helloword"
l1:=len(rune(str))
l2:=bytes.count(byte(str),nil)-1)
l3:=strings.count(str,"")-1
l4:=utf8.runecountinstring(str)
fmt.println(l1)
fmt.println(l2)
fmt.println(l3)
fmt.println(l4)
列印結果:都是 9
二、strings.count函式和bytes.count函式
這兩個函式的用法是相同,只是乙個作用在字串上,乙個作用在位元組上
strings中的count方法
func count(s, sep string) int{}
判斷字元sep在字串s中出現的次數,沒有找到則返回-1,如果為空字串("")則返回字串的長度+1
例:
str:="helloworld"
fmt.println(strings.count(str,"o")) //列印 o 出現的次數,列印結果為2
注:在 golang 中,如果字串中出現中文字元不能直接呼叫 len 函式來統計字串字元長度,這是因為在 go 中,字串是以 utf-8 為格式進行儲存的,在字串上呼叫 len 函式,取得的是字串包含的 byte 的個數。
str:="helloworld"
str1 := "hello, 世界"
fmt.println(len(str1)) // 列印結果:13
fmt.println(len(str)) //列印結果:9 (如果是純英文本元的字串,可以使用來判斷字串的長度)
獲取字串的長度
php中有乙個神奇的函式,可以直接獲取字串的長度,這個函式就是strlen 例子如下 str hello len strlen str echo len 輸出結果是5strlen函式對於計算英文字元是非常的擅長,但是如果有中文漢字,要計算長度該怎麼辦?可以使用mb strlen 函式獲取字串中中文長...
Lua中獲取字串長度
偶然的情況下,需要用lua 獲取字串的長度,結果發現結果和自己想象的不一樣,乙個漢字算兩個英文本元的時代已經快過去了,乙個中文字元列印出來的長度為3,引起了我的好奇,查詢資料了解了具體原因 不同的編碼格式佔位元組數是不同的,utf 8編碼下乙個中文所佔位元組也是不確定的,通常是3個字元,可能是2個 ...
Oracle獲取字串長度
oracle中常用的字串長度獲取方法,有兩個 lengthb string 和length string b是byte位元組的意思 其中 lengthb string 計算string所佔的位元組長度 返回字串的長度,單位是位元組 length string 計算string所佔的字元長度 返回字串...