码迷,mamicode.com
首页 > 其他好文 > 详细

go_字符和字符串处理

时间:2018-03-12 00:00:08      阅读:286      评论:0      收藏:0      [点我收藏+]

标签:class   decode   字符串处理   fun   bsp   font   %x   color   str   

rune相当于go的char

使用range遍历pos,rune对

使用utf8.RuneCountInString(s)获得字符数量

使用len获得字节长度,使用[]byte获得字节

一般把字节转成[]rune,更加容易操作

package main

import (
	"fmt"
	"unicode/utf8"
)

func main() {
	s:="Yes我爱上百度!"
	fmt.Println(s)
	for _,b:=range []byte(s)  {
		fmt.Printf("%X ",b)
	}
	fmt.Println()

	for i,ch:=range s{//ch is  a rune
		fmt.Printf("(%d %X)",i,ch)
	}
	fmt.Println()
	fmt.Println("Rune 长度",
			utf8.RuneCountInString(s))

	bytes :=[]byte(s)
	for len(bytes)>0{
		ch,size:=utf8.DecodeRune(bytes)
		bytes = bytes[size:]
		fmt.Printf("%c ",ch)
	}
	fmt.Println()

	for i,ch :=range []rune(s){
		fmt.Printf("(%d %c)",i,ch)
	}
	fmt.Println()
}

  

 

go_字符和字符串处理

标签:class   decode   字符串处理   fun   bsp   font   %x   color   str   

原文地址:https://www.cnblogs.com/luffe/p/8546921.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!