1.统计字符串的长度,按字节len(str)

  str := "hello北京"
  fmt.Println("str len=", len(str))

2.字符串遍历,同时处理有中文的问题 r := []rune(str)

    str2 := "hello北京"
r := []rune(str2)
for i := 1; i < len(r); i++ {
fmt.Printf("字符=%c\n", r[i])
}

3.字符串转整数: n, err := strconv.Atoi("12")

   n, err := strconv.Atoi("")
if err != nil{
fmt.Println("转换错误", err)
}else {
fmt.Println("转成的结果是", n)
}

4.整数转字符串 str = strconv.Itoa(12345)

    str = strconv.Itoa(123456)
fmt.Printf("str=%v, str=%T", str, str)

5.字符串转 []byte: var bytes = []byte("hello go")

    var bytes = []byte("hello go")
fmt.Printf("bytes=%v\n", bytes)

6.[]byte 转字符串: str = string([]byte{97, 98, 99})

    str = string([]byte{97, 98, 99})
fmt.Printf("str=%v\n", str)

7.10进制转2,8,16进制: str = strconv.FormatInt(123, 2)

    str := strconv.FormatInt(123, 2)
fmt.Printf("123对应的二进制是=%v\n", str)
str = strconv.FormatInt(123, 16)
fmt.Printf("123对应的16进制是=%v\n", str)

8.查找子串是否在指定的字符串中:strings.Contains("seafood", "foo")

    b := strings.Contains("seafood", "abc")
fmt.Printf("b=%v\n", b)

9.统计一个字符串有几个指定的子串: strings.Count("ceheese", "e")

    num := strings.Count("ceheese", "e")
fmt.Printf("num=%v\n", num)

10.不区分大小写的字符串比较(==是区分字母大小写的):fmt.Println(strings.EqualFold("abc", "Abc"))

    b = strings.EqualFold("abc", "Abc")
fmt.Printf("b=%v\n", b)

11.返回子串在字符串第一次出现的index值,如果没有返回-1:strings.Index("NLT_abc", "abc")

  index = strings.Index("NLT_abcabcabc", "abc")
  fmt.Printf("index=%v\n", index)

12.返回子串在字符串最后一次出现的index,如果没有返回-1:strings.LastIndex("go golang", "go")

    index := strings.LastIndex("go golang", "go")
fmt.Printf("index=%v\n", index)

13.将指定的子串替换成另外一个子串:strings.Replace("go lgo hello", "go",  "python", n)n可以指定你希望替换几个,如果n= -1表示全部替换

    str2 := "go go hello"
str := strings.Replace(str2, "go", "python", -1)
fmt.Printf("str=%v str2=%v\n", str, str2)

14.按照指定的某个字符,为分割标识,将一个字符串拆分成字符串数组,strings.Split("hello, wrold, ok", ",")

    strArr := strings.Split("hello,world,ok", ",")
for i := 0; i < len(strArr); i++ {
fmt.Printf("str[%v]=%v\n", i, strArr[i])
}
fmt.Printf("strArr=%v\n", strArr)

15.将字符串的字母进行大小写的转换:strings.ToLower("Go") // strings.ToUpper("Go")

    str := "goLange Hello"
//str = strings.ToLower(str)
str = strings.ToUpper(str)
fmt.Printf("str=%v\n", str)

16.将字符串左右两边的空格去掉:strings.TrimSpace("        tn  a long gopher ntrn           ")

    str = strings.TrimSpace("        tn  a long gopher ntrn           ")
fmt.Printf("str=%v\n", str)

17.将字符串左右两边指定的字符去掉:strings.Trim("!hello world!", "!") // strings.TrimLeft //  strings.TrimRight

    str = strings.Trim("! he!llo!", " !")
fmt.Printf("str=%q\n", str)

18.判断字符串是否以指定的字符串开头:strings.HasPrefix("ftp://192.168.10.1", "ftp")

    b := strings.HasPrefix("ftp://192.168.10.1", "ftp")
fmt.Printf("b=%v\n", b)

19.判断字符串是否以指定的字符串结束:strings.HasSuffix("NLT_abc.jpg", "abc")

    b = strings.HasSuffix("NLT_abcd", "abc")
fmt.Printf("b=%v\n",b)

golang字符串常用的系统函数的更多相关文章

  1. MySQL常用的系统函数

    MySQL常用的系统函数 2019年01月17日 17:49:14 pan_junbiao 阅读数 155    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csd ...

  2. Oracle中常用的系统函数

    本文主要来梳理下Oracle中的常用的系统函数,掌握这些函数的使用,对于我们编写SQL语句或PL/SQL代码时很有帮助,所以这也是必须掌握的知识点. 本文主要包括以下函数介绍:1.字符串函数2. 数值 ...

  3. SQL Server 常用的系统函数

    Ø  简介 本文主要列举 SQL Server 中常用的一些系统函数,帮助我们在编写 SQL 时忘了某个函数的用法方便查阅.主要分为以下几类函数,更多函数可参考官网. 1.   字符串函数 2.   ...

  4. 【Oracle】Oracle中常用的系统函数

    Oracle SQL 提供了用于执行特定操作的专用函数.这些函数大大增强了 SQL 语言的功能.函数可以接受零个或者多个输入参数,并返回一个输出结果.在Oracle还可以自定义函数,关于更多信息可以查 ...

  5. golang字符串常用系统函数

  6. golang字符串常用函数

    package utils import "fmt" import "strconv" import "strings" var str s ...

  7. php 常用的系统函数

    字符串函数 strlen:获取字符串长度,字节长度 substr_count 某字符串出现的次数 substr:字符串截取,获取字符串(按照字节进行截取) mb_strlenmb_substr str ...

  8. php常用的系统函数大全

    字符串函数 strlen:获取字符串长度,字节长度 substr_count 某字符串出现的次数 substr:字符串截取,获取字符串(按照字节进行截取) mb_strlenmb_substr str ...

  9. php常用的系统函数

    字符串函数 strlen:获取字符串长度,字节长度 substr_count 某字符串出现的次数 substr:字符串截取,获取字符串(按照字节进行截取) mb_strlenmb_substr str ...

随机推荐

  1. Java基础系列 - 接口(功能,用途和优势)

    package com.test1; /** * 接口的使用 */ public class test1 { public static void main(String[] args) { //创建 ...

  2. Linux用户组

    1.介绍 类似于角色,系统可以对有共性的多个用户进行统一的管理 2.增加组 groupadd  组名 3.删除组 groupdel  组名 4.增加用户时直接为用户指定组 useradd  -g  用 ...

  3. Python_BDD概念

    BDD概念 全称 Behavior-driven development 中文 行为驱动开发 概念 是敏捷软件开发技术的一种,鼓励各方人员在一个软件项目里交流合作,包括开发人员.测试人员和非技术人员或 ...

  4. laravel不同用户对应的同名的session是独立的

    laravel不同用户对应的同名的session是独立的 一.总结 一句话总结: laravel中 不同用户会根据不同的laravel_session从而将session存在不同的session文件里 ...

  5. 转:android DownloadManager: java.lang.SecurityException: Invalid value for visibility: 2

    1.问题描述 今天使用Android系统的DownloadManager进行下载操作时,爆了如下所示的错误: java.lang.RuntimeException: Unable to start s ...

  6. Ionic4.x 中的 UI 组件(UI Components) Slides 轮播图组件、Searchbar 组件、 Segment 组件

    Slides 轮播图组件 Ionic4.x 中的轮播图组件是基于 swiper 插件,所以配置 slides 的属性需要在 swiper 的 api 中 找 Swiper Api:http://ida ...

  7. java接口如何有效防止恶意请求

    java接口如何有效防止恶意请求?已解决   解决方法: 1.在redis数据库db0中新建一个名为rd_sms_request_count表,表结构: Ip:客户请求的ip Success_coun ...

  8. 静态文件cdn自解析生成相对路径

    一.场景和目标:      用户上传一个包含 index.html 的静态资源压缩包,资源内所有文件都是相互依赖的,不需要用户对内部文件内容做任何特殊处理,仅通过服务端逻辑处理达到用户访问 http: ...

  9. 123457123456#0#-----com.twoapp.YiZhiPuzzle02--前拼后广--儿童日常拼图游戏jiemei

    com.twoapp.YiZhiPuzzle02--前拼后广--儿童日常拼图游戏jiemei

  10. python基础之线程、进程、协程

    线程 线程基础知识 一个应用程序,可以多进程.也可以多线程. 一个python脚本,默认是单进程,单线程的. I/O操作(音频.视频.显卡操作),不占用CPU,所以: 对于I/O密集型操作,不会占用C ...