golang之字符串
golang的字符串(string)有两种类型:
一种是byte类型,或者叫uint8类型,代表ASCII码的一个字符;
一种是rune类型,或者叫int32类型,代表UTF-8的一个字符,当需要处理中文、日文等unicode字符时,则需要用到 rune 类型。
UTF-8是unicode的一种。
func main() {travelString()updateString()countHanString()
}func travelString() {str := "hello傅里叶"// byte类型for i := 0; i < len(str); i++ {fmt.Printf("%v(%c) ", str[i], str[i])}fmt.Println()// rune类型for _, s := range str {fmt.Printf("%v(%c) ", s, s)}fmt.Println()
}func updateString() {str1 := "hello"byteStr := []byte(str1) // 强制类型转换byteStr[0] = 'a'fmt.Println(string(byteStr))str2 := "傅里叶"runeStr := []rune(str2) // 强制类型转换runeStr[0] = '佛'fmt.Println(string(runeStr))
}
func countHanString() {str := "hello傅里叶"var count intfor _, s := range str {if unicode.Is(unicode.Han, s) {count++}}fmt.Println(count)
}output:
104(h) 101(e) 108(l) 108(l) 111(o) 229(å) 130() 133() 233(é) 135() 140() 229(å) 143() 182(¶)
104(h) 101(e) 108(l) 108(l) 111(o) 20613(傅) 37324(里) 21494(叶)
aello
佛里叶
3
golang之字符串相关推荐
- golang json字符串转Golang对象
golang json字符串转Golang对象 github代码地址 一.普通json字符串转Golang对象 import "github.com/ChengjinWu/gojson&q ...
- golang 格式化字符串_如何在Go中格式化字符串
golang 格式化字符串 As strings are often made up of written text, there are many instances when we may wan ...
- golang中字符串内置函数整理
字符串内置函数 1. 判断字符串的长度 str := "korea国" fmt.Println("str len=", len(str)) 2. 字符串遍历,同 ...
- golang插入字符串_golang 几种字符串的连接方式
golang 几种字符串的连接方式 最近在做性能优化,有个函数里面的耗时特别长,看里面的操作大多是一些字符串拼接的操作,而字符串拼接在 golang 里面其实有很多种实现. 实现方法 1. 直接使用运 ...
- golang大量字符串拼接方法
2019独角兽企业重金招聘Python工程师标准>>> 虽然方便,但是使用+=操作符并不是在一个循环中往字符串末尾追加字符串最有效的方式,一个有效的方式是准备好一个字符串切片([]s ...
- 1190. 反转每对括号间的子串 golang反转字符串
1190. 反转每对括号间的子串 557. 反转字符串中的单词 III 344. 反转字符串 golang 这个题比较新,但是面试竟然被问到了.10分钟之内没写出来 给出一个字符串 s(仅含有小写英文 ...
- golang统计字符串字数
golang 可以使用正则和 unicode 包的方法判断. 以下函数 GetStrLength 返回输入的字符串的字数,每个汉字和中文标点算 1 个字数,英文和其他字符算半个字数,不足 1 个字算 ...
- golang中字符串和数字转换
strconv.itoa() 数字转成字符串,再与字符串拼接 str := strconv.Itoa(12) println("str + '23' = ", str+" ...
- Golang 分割字符串
文章目录 1.按空格分割 2.按字符/字符串分割 3.按多个字符分割 4.按多个字符串分割 5.其他分割函数 6.go-huge-util 参考文献 在开发过程中,很多时候我们有分割字符串的需求,即把 ...
最新文章
- IBM服务器raid5崩溃数据恢复方案及过程
- 一个射击运动员打靶,靶一共有10环,连开10枪打中90环的可能性有多少种?请用递归算法编程实现。...
- 2015 HIAST Collegiate Programming Contest J
- Google:推荐几款好用的Chrome浏览器插件
- #{}与${}的区别
- 【POJ - 1836】Alignment(dp,LIS,最长上升子序列类问题)
- python中定义元组的符号_python中得元组和字符串详解,有这么一篇文章就够了
- selenium 验证码_selenium自动化测试之验证码处理
- hadoop 关闭datanode节点时发生异常:no datanode to stop
- spring session 考虑问题解答
- SSH学习--struts的action中BaseAction的作用
- Prolog语言介绍(一)
- 嵌入式软件工程师成长---所需要看的书籍
- 小米笔记本如何开启VT虚拟化
- 龙讯LT8911EXB高性能MIPI转EDP分辨率1080P概述
- OpenCV学习案例之车牌识别EasyPR
- *转载 Tarjan有向图详解
- 05【数据的备份与恢复】
- printf(\033[1;33m Hello World. \033[0m \n);有趣的串口之超级终端的玩法
- crh寄存器_STM32的寄存器控制SDA_IN()/SDA_OUT()