golang按显现长度截取字符串ITeye - 威尼斯人

golang按显现长度截取字符串ITeye

2019-01-13 15:38:48 | 作者: 晋鹏 | 标签: 显现,长度,截取 | 浏览: 1623

依据显现长度截取字符串,之前php用的utf8编码,10个英文和10个汉字的显现长度距离太大,按字节截取的话又会犯错呈现截取半个汉字的状况,所以写了这两个函数.

这两天在折腾golang,所以就用golang重写了着连个函数.代码如下:

package main
import (
 "fmt"
func main() {
 fmt.Println(show_strlen("哈哈1"))
 fmt.Println(show_substr("哈哈1什1么的", 9))
}

根绝显现长度截取字符串

func show_substr(s string, l int) string {
 if len(s) = l {
 return s
 ss, sl, rl, rs := "", 0, 0, []rune(s)
 for _, r := range rs {
 rint := int(r)
 if rint 128 {
 rl = 1
 } else {
 rl = 2
 if sl + rl l {
 break
 sl += rl
 ss += string(r)
 return ss
}

依据字符串显现获取显现长度

func show_strlen(s string) int {
 sl := 0
 rs := []rune(s)
 for _, r := range rs {
 rint := int(r)
 if rint 128 {
 sl++
 } else {
 sl += 2
 return sl
版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表威尼斯人立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章

阅读排行

  • 1
  • 2

    Java多线程编程ITeye

    线程,音讯,出产
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

    FileDowloadITeye

    途径,获取,绝对
  • 10

    java FTPClient的运用ITeye

    服务器,文件,运用