Golang字符串函数认识(一)
package main
import (
"fmt"
"strings"
"strconv"
) func main(){
//返回字符串的(字节)长度,相当于PHP的strlen
str := "hello世界" //11 ,golang的编码统一为utf-8,字母和数字分别占一个字节,汉子占用3个字节
// str := "hello" //
fmt.Println(len(str)) //字符串遍历
str2 := "hello世界"
//如果有中文,需要转切片,不然会出现乱码,因为是按照字符串的字节长度遍历
str2_r := []rune(str2)
for i := ; i < len(str2_r); i++ {
fmt.Printf("%c\n",str2_r[i])
} //字符串转整数
//第一个参数是要转化成的字符串,第二个是错误信息.这里需要引用strconv包
n, err := strconv.Atoi("")
if err != nil { //如果有错
fmt.Println("转换错误", err)
} else { //如果成功
fmt.Println("转换成功", n)
} //整数转字符串
str = strconv.Itoa()
fmt.Printf("str=%v, str=%T", str, str) //str=12345, str=string //字符串转[]byte
var bytes = []byte("hello golang")
fmt.Println(bytes) //str=12345, str=string[104 101 108 108 111 32 103 111 108 97 110 103] //[]byte转字符串
str = string([]byte{, , })
fmt.Println(str) //abc 的asc码分别是97,98,99 //十进制转化成2,8,16进制,返回对应的字符串
str = strconv.FormatInt(, )
fmt.Printf("123对应的二进制是=%v\n", str)
str = strconv.FormatInt(, )
fmt.Printf("123对应的八进制是=%v\n", str)
str = strconv.FormatInt(, )
fmt.Printf("123对应的十六进制是=%v\n", str)
//123对应的二进制是=1111011
//123对应的八进制是=173
//123对应的十六进制是=7b //判断一个字符串中是否包含指定字符串 ,相当于php中的strpos,但是php中可能会返回下标
status := strings.Contains("hello world", "hello")
fmt.Printf("status=%v\n", status) //status=true //统计一个字符串中有几个指定的字符
count := strings.Count("hello world", "l")
fmt.Printf("字符存在个数:%v\n", count) //字符存在个数:3;如果没有,则0 //字符串比较:不区分大小写
status = strings.EqualFold("abc", "ABC")
fmt.Printf("status=%v\n", status) //status=true //字符串比较:区分大小写 两个=
fmt.Printf("status=%v", "abc" == "ABC")//status=false //返回子字符串在指定字符串中第一次出现的index值(位置),如果没有返回-1
index := strings.Index("test_str", "s")
fmt.Printf("index=%v", index) //index=2
}
Golang字符串函数认识(一)的更多相关文章
- Golang字符串函数认识(二)
package main import ( "fmt" "strings" ) func main(){ //返回字符在指定字符串中最后一次出现的位置 last ...
- GO语言的进阶之路-Golang字符串处理以及文件操作
GO语言的进阶之路-Golang字符串处理以及文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们都知道Golang是一门强类型的语言,相比Python在处理一些并发问题也 ...
- [转] golang 字符串比较是否相等
1 前言 strings.EqualFold不区分大小写,"==" 区分且直观. 2 代码 golang字符串比较的三种常见方法 fmt.Println("go" ...
- golang(06)函数介绍
原文链接 http://www.limerence2017.com/2019/09/11/golang11/#more 函数简介 函数是编程语言中不可缺少的部分,在golang这门语言中函数是一等公民 ...
- [Golang]字符串拼接方式的性能分析
本文100%由本人(Haoxiang Ma)原创,如需转载请注明出处. 本文写于2019/02/16,基于Go 1.11.至于其他版本的Go SDK,如有出入请自行查阅其他资料. Overview 写 ...
- ThinkPHP 模板substr的截取字符串函数
ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...
- SQL字符串函数
LEN() :计算字符串长度(字符的个数.)datalength();//计算字符串所占用的字节数,不属于字符串函数.测试varchar变量与nvarchar变量存储字符串a的区别.见备注1.LOWE ...
- Python3中的字符串函数学习总结
这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...
- TSQL 字符串函数:截断和查找
字符串截断函数是指:Stuff 和 SubString,字符串查找函数是:CharIndex 和 PatIndex 一,SubString 截取子串 最常用的字符串函数,用于截取特定长度的子串. SU ...
随机推荐
- Let Encrypt延期(转自虞大胆的叽叽喳喳)
前几天发现我的 letsencrypt 通配符证书快过期了,想为这两张证书续期(renew). 首先运行命令查看我的所有证书: $ certbot-auto certificates 其中证书名 si ...
- 实验一Java开发环境的熟悉-3
实现学生成绩管理功能(增删改,排序,查找),并进行测试(正常情况,异常情况,边界情况). 代码:
- 听说,你也一直钟爱着equals。。。
脑补一下final final 用于声明变量/参数/属性.方法和类. 修饰变量:如果变量是基本类型,其值不变:如果是对象,则引用不可再变(内容可变). 修饰方法:方法不可重写(是否可继承取决于方法的访 ...
- phpstudy一系列安装问题
phpStudy是一款PHP调试环境的程序集成包,该程序包集成最新的Apache+PHP+MySQL+phpMyAdmin+ZendOptimizer,一次性安装,无须配置即可使用,是非常方便.好用的 ...
- node.js初识07
之前有说过,nodejs是 没有web容器的,阿帕奇是自带的web容器,如果希望node达到阿帕奇的效果,即http://127.0.0.1:3000/a/b/c.html 出现这样的链接访问页面,所 ...
- LeetCode83.删除排序链表中的重复的元素
给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次. 示例 1: 输入: 1->1->2 输出: 1->2 示例 2: 输入: 1->1->2->3-&g ...
- ueditor上传图片配置成功,但是如何删除无用的图片
我使用ueditor作为富文本编辑器,配置已经好了,上传功能也好了.现在的问题是当使用ueditor上传图片的时候,选择了图片就立刻上传到指定的文件夹里,而后续即使没有保存该篇文章内容,即取消操作,图 ...
- sql server2000中使用convert来取得datetime数据类型样式(转)
日期数据格式的处理,两个示例: CONVERT(varchar(16), 时间一, 20) 结果:2007-02-01 08:02/*时间一般为getdate()函数或数据表里的字段*/ CONVER ...
- 详解Linux下iptables中的DNAT与SNAT设置(转)
详解Linux下iptables中的DNAT与SNAT设置 这篇文章主要介绍了Linux下iptables中的DNAT与SNAT设置,是Linux网络配置中的基础知识,需要的朋友可以参考下 原文连 ...
- Gibbs Sampling深入理解
二维Gibbs Sampling算法 Gibbs Sampling是高维概率分布的MCMC采样方法.二维场景下,状态(x, y)转移到(x’, y’),可以分为三种场景 (1)平行于y轴转移,如上图中 ...