国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Golang > 正文

Go語(yǔ)言按字節(jié)截取字符串的方法

2020-04-01 19:20:30
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
這篇文章主要介紹了Go語(yǔ)言按字節(jié)截取字符串的方法,涉及Go語(yǔ)言操作字符串的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
 

本文實(shí)例講述了Go語(yǔ)言按字節(jié)截取字符串的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

 

復(fù)制代碼代碼如下:
// 按字節(jié)截取字符串 utf-8不亂碼
func SubstrByByte(str string, length int) string {
    bs := []byte(str)[:length]
    bl := 0
    for i:=len(bs)-1; i>=0; i-- {
        switch {
        case bs[i] >= 0 && bs[i] <= 127:
            return string(bs[:i+1])
        case bs[i] >= 128 && bs[i] <= 191:
            bl++;
        case bs[i] >= 192 && bs[i] <= 253:
            cl := 0
            switch {
            case bs[i] & 252 == 252:
                cl = 6
            case bs[i] & 248 == 248:
                cl = 5
            case bs[i] & 240 == 240:
                cl = 4
            case bs[i] & 224 == 224:
                cl = 3
            default:
                cl = 2
            }
            if bl+1 == cl {
                return string(bs[:i+cl])
            }
            return string(bs[:i])
        }
    }
    return ""
}

 

希望本文所述對(duì)大家的Go語(yǔ)言程序設(shè)計(jì)有所幫助。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 昌宁县| 张家港市| 天台县| 岳普湖县| 泰兴市| 平湖市| 琼结县| 赤壁市| 万宁市| 高青县| 旅游| 桦甸市| 呼和浩特市| 衡南县| 霍邱县| 邓州市| 成都市| 渭南市| 收藏| 东乡族自治县| 江山市| 贺州市| 南充市| 岳池县| 黑龙江省| 苏尼特左旗| 青田县| 连平县| 安化县| 外汇| 新丰县| 阳高县| 抚远县| 封丘县| 同德县| 杂多县| 卫辉市| 高台县| 龙泉市| 勐海县| 抚顺县|