Go语言中文网 为您找到相关结果 325

Golang之strings包

只列举了部分函数方法的使用: 太多了。。。。。。。 package main import ( "fmt" "strings" ) func main() { Count计算 sep在s中的非重叠个数 func Count(s, substr string) int { s := "Hello,超哥" 统计 l 出现的次数 n := strings.Count(s, "l") fmt.Println(n) //2 如果substr 为空,返回s中字符个数+1 n=strings.Count(s,"") fmt.Println(n) Contains判断 字符串 s中 是否包含 子串 substr func Contains(s, substr string) bool { substr什么都...阅读全文

博文 2017-12-21 09:00:01 pyyu

golang——(strings包)常用字符串操作函数

1)func HasPrefix(s, prefix string) bool判断字符串s是否有前缀字符串prefix;(2)func HasSuffix(s, suffix string) bool判断字符串s是否有后缀字符串suffix;(3)func Contains(s, substr string) bool判断字符串s是否包含子串substr;(4)func Count(s, sep string) int返回字符串s有几个不重复sep子串;(5)func Index(s, sep string) int返回字符串s中子串sep第一次出现的位置;不存在返回-1;(6)func ToLower(s string) string返回字符串s转小写的拷贝;(7)func ToUpper...阅读全文

博文 2019-08-27 17:32:52 灰侠_bf44

golang,python中字符串的截取。

package main import ( "fmt" "strings" ) func main() { a := "大大1122佛挡杀佛大大" c := Substr(a, "大大1", "杀") fmt.Println(c) } func Substr(str, startStr, endStr string) string { s := strings.Index(str, (startStr)) + len(startStr) e := strings.Index(str, (endStr)) if s == -1 { return "" } if e == -1 { return string(str[s:]) } return string(str[s:e]) } def su...阅读全文

博文 2017-10-23 14:03:11 大洋的顶端

[用Golang刷LeetCode之 6] 557. Reverse Words in a String III

题目 Given a string, you need to reverse the order of characters in each word within a sentence while still preserving whitespace and initial word order. Example 1: Input: "Let's take LeetCode contest" Output: "s'teL ekat edoCteeL tsetnoc" Note: In the string, each word is separated by single space and there will not be any extra space in the string....阅读全文

博文 2017-08-14 09:04:59 miltonsun

一道简单的分词程序

**题目:** > 给出字符串dogandcat及字典{"do", "d", "gand", "g", "and", "dog", "cat", "c", "at", "in", "play", "i", "nplay"}, > 找出组成字符串的所以可能的单词组合。 之前用haskell写过一个实现,但接触golang之后,发现可以写成更简明的版本,代码如下: ``` package main import ( "fmt" ) var word = "dogandcat" var dicts = []string{"do", "d", "gand", "g", "and", "dog", "cat", "c", "at", "in", "play", "i", "nplay"} var re...阅读全文

博文 2017-09-29 04:50:15 aliate

golang基础学习-strings包常用函数学习

1.简介 Golang基础学习-strings包的学习. 2.代码 package main import ( "fmt" "strings" ) //StrFunc 字符串说明 func main() { var testStr string testStr = "seetatech" testStrTrim := " seeta tech " checkStr := "tech" fmt.Println("------:" + testStr + ":-----") //验证是否包含 fmt.Println(strings.Contains(testStr, checkStr)) //计算字符串包含某字符数量 fmt.Println(strings.Count(testStr, chec...阅读全文

博文 2018-05-28 14:34:38 wmm369

1>Golang字符串常用操作

字符,字节 // 字符串 s := "hello 皇甫村" // 单独的字母,汉字,符号表示一个字符 c1 := 'h' c2 := '皇' // 字节。一个字节=8bit(8个二进制位) // 一个'A' =1一个字节 // 一个utf8编码的汉字 '砂' = 一般占用3个字节 1kb = 1024字节 字符串 package main import ( "fmt" "strings" ) // 字符串相关操作 var s3 = "C:\\Windows\\SoftwareDistribution\\Download" func main() { // 字符串长度 fmt.Println(len(s3)) // 字符串拼接 name := "理想" world := "dsb" fmt.P...阅读全文

博文 2020-01-28 21:32:42 三人行大道

golang package整理(strings)

开发十年,就只剩下这套Java开发体系了 >>> /*package strings*/ //HasPrefix 判断字符串 s 是否以 prefix 开头 strings.HasPrefix(s, prefix string) bool //HasSuffix 判断字符串 s 是否以 suffix 结尾 strings.HasSuffix(s, suffix string) bool //Contains 判断字符串 s 是否包含 substr strings.Contains(s, substr string) bool //****判断子字符串或字符在父字符串中出现的位置(索引)***// //Index 返回字符串 str 在字符串 s 中的索引(str 的第一个字符的索引),-1 ...阅读全文

博文 2018-09-23 00:33:09 ivandong_qifan

兄弟连Go语言培训go生成随机字符串

写了一个简单golang生成随机字符串的方法,分享出来,生成的都是大写的字母 funcinit(){ r=rand.New(rand.NewSource(time.Now().Unix())) } funcRandString(lenint)string{ bytes:=make([]byte,len) fori:=0;i b:=r.Intn(26)+65 bytes[i]=byte(b) } returnstring(bytes) } funcTestRand(t*testing.T){ fori:=0;i<10;i++{ fmt.Println(RandString(10)) } } 测试结果: ZGNHXBCJRQ OWXMEWZTKK GYEYPKJHGL CEHJXKHRAE FA...阅读全文

博文 2018-08-14 15:35:22 兄弟连区块链培训

go 字符串

字符串 什么是字符串? Go 语言中的字符串是一个字节切片。把内容放在双引号""之间,我们可以创建一个字符串。让我们来看一个创建并打印字符串的简单示例。 package main import ( "fmt" ) func main() { name := "Hello World" fmt.Println(name) } 上面的程序将会输出 Hello World。 Go 中的字符串是兼容 Unicode 编码的,并且使用 UTF-8 进行编码。 单独获取字符串的每一个字节 由于字符串是一个字节切片,所以我们可以获取字符串的每一个字节。 package main import ( "fmt" ) func printBytes(s string) { for i:= 0; i < len(...阅读全文

博文 2019-04-09 07:35:09 听砜

Golang中类型转换

package main import ( "github.com/astaxie/beego/logs" "strconv" ) func main() { //string 转 int var str string ="1" i, _ := strconv.Atoi(str) logs.Info(i) //string转int64 i64, _ := strconv.ParseInt(str, 10, 64) logs.Info(i64) //string转byte bytes := []byte(str) logs.Info(bytes) //int转string var number=10 itoa := strconv.Itoa(number) logs.Info(itoa) //...阅读全文

字符串函数在golang中的使用

package main import ( "fmt" "strings" ) func main() { //判断父字符串是否包含子字符串,包含为真,否则为假 fmt.Println("-------------------------------") fmt.Println("contains Function:", strings.Contains("Austrilia", "lia")) fmt.Println("contains Function:", strings.Contains("Austrilia", "mia")) //子字符串在父字符串中出现的次数 fmt.Println("-------------------------------") fmt.Println("...阅读全文

博文 2019-03-05 15:36:20 PowerMichael

关于遍历数据的时候 时间戳转换时间字符串格式

~~~ type News_list struct { Nid int Ntitle string Ncontent string Ntime int64 //这里是 int64类型 数据库里也是bigint类型 Ntype int } //执行 sql2 := fmt.Sprintf("select nid,ntitle,ncontent,ntime,ntype from news_list where 1=1 order by nid desc limit %s,%s", 10, 20) rows, _ := mysql.DB.Query(sql2) for rows.Next(){ if err2 := rows.S...阅读全文

golang 错误处理

Go 语言使用 error 类型来返回函数执行过程中遇到的错误,如果返回的 error 值为 nil,则表示没有错误,否则 error 会返回一个说明错误的字符串。 其实 error 只是一个接口,定义如下: type error interface { Error() string } 你可以用任何类型去实现它(只要实现 Error() 方法即可)。 通过new 函数,生成简单的 error 对象 package main import ( "fmt" "iris/core/errors" ) func run(code int) error { if code > 0 { return errors.New("这是一个错误") } return nil; } func main() { ...阅读全文

博文 2019-07-09 18:32:39 战神悟空

golang-字符串

字符串比较相等 func main() { fmt.Println("ADN" == "ADN") fmt.Println("ADN" == "adn") fmt.Println(strings.Compare("ADN", "ADN")) fmt.Println(strings.Compare("ADN", "adn")) fmt.Println(strings.EqualFold("ADN", "ADN")) fmt.Println(strings.EqualFold("ADN", "adn")) } Compare比"=="快,两种方法都区分大小写 EqualFold比较UTF-8编码在小写的条件下是否相等,不区分大小写。 字符串拼接 fmt.Sprintf 和 strings.Joi...阅读全文

博文 2017-08-21 12:05:10 ifcoder

golang-练习1

题目: 输入字符串,返回最大的单词。 实例:run#¥@!time 返回:time package main import ( "fmt" "strings" ) func MyPrintf(a string) string { mm := strings.FieldsFunc(a,split) fmt.Println(mm) for i:=0;i<(len(mm));i++{ if len(mm[0])='a'&&s<='z')||(s>='A'&&s<='Z')){ return false } return true }...阅读全文

博文 2017-11-10 16:00:01 peterinblog

GoLang生成不重复六位验证码

不同的整数生成固定六位的字符串验证码 package main import ( "container/list" "fmt" ) var baseStr string = "0123456789ABCDEFGHJKLMNPQRSTUVWXYZ" var base []byte = []byte(baseStr) func Base34(n uint64) []byte { quotient := n mod := uint64(0) l := list.New() for quotient != 0 { mod = quotient % 34 quotient = quotient / 34 l.PushFront(base[int(mod)]) } listLen := l.Len() ...阅读全文

golang fmt格式化字符串%v,%T

版权声明:本文为翔云原创文章,未经博主允许不得转载。 https://blog.csdn.net/lanyang123456/article/details/78172375 T常用的格式化字符串有: %v the value in a default format when printing structs, the plus flag (%+v) adds field names %#v a Go-syntax representation of the value %T a Go-syntax representation of the type of the value 不同类型默认的%v 如下: bool: %t int, int8 etc.: %d uint, uint8 etc...阅读全文

博文 2019-02-01 11:31:38 lanyang123456

go语言语法

变量定义 先声明后使用 var v1 int //整形,长度依平台不同而改变 var v2 string //字符串 var v3 [3]int //数组 v1 = 10 v2 = "hello" v3 = [3]int{1,2,3} 声明同时初始化: var v1 int = 10 //三种方式具有相同效果 var v1 = 10 v1 := 10 var v1 [3]int = [3]int{1,2,3} //三种方式具有相同效果 var v1 = [3]int{1,2,3} v1 := [3]int{1,2,3} $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text()...阅读全文

博文 2016-10-27 08:00:13 chengminghu001

【译】Go语言之父带你重新认识字符串、字节、rune和字符

以下文章翻译自罗伯·派克发表在Go Blog的文章,文章中为读者详述了Go语言中字符串与我们经常提起的字节、字符还有rune的关系和相互之间的不同。正如派克在文中所说 字符串这个话题对于一篇博客文章来说似乎太简单了,但是要很好地使用它们,不仅需要了解它们的工作原理,还需要了解字节,字符和 rune 的区别,以及 Unicode 和 UTF- 8,字符串和字符串直接量之间的区别,以及其他甚至更细微的区别。 原文地址:blog.golang.org/strings 文章篇幅还是挺长的,大家时间都很宝贵所以我先把文章探究的问题的结论放在前面,有时间的同学还是建议整篇读一下。 Go 源代码始终为 UTF-8。 字符串可以包含任意字节。 字符串文字中不包含字节级转义符时字符串始终包含有效的 UTF-8...阅读全文

博文 2020-02-11 22:34:24 kevinyan

入门:基础语法(一)变量的定义使用

#### 一、简单进入一个hello world ``` package main import "fmt" func main() { fmt.Println("hello world!") } ``` 1.package main是将本文件打包成main包,一个程序**有且只有一个main包**; 2.import是该文件下所需的“依赖的包”,这里我们所需以来的包是fmt,所需“依赖”的函数是Println()。golang中都是通过包.函数来进行函数调用的; 3.一个程**有且只有一个main()函数** #### 二、变量的定义 ######(一)使用var关键字进行定义 ``` func variableTypeDeduction() { var a, b = 3, 4 var c...阅读全文

博文 2018-09-23 23:42:25 ace_kylin

golang数组

package main import "fmt" func f1() { a := [...]string{"a", "b", "c", "d"} for i := range a { fmt.Println("Array item", i, "is", a[i]) } } func f2() { var arr1=new([5]int) for i:=0;i<5;i++ { arr1[i]=i*3 } for _,val:=range arr1{ fmt.Printf("-----%d----arr1----\n",val) } var arr[5] int for i:=0;i<5;i++ { arr[i]=i*2 } for _,val:=range arr{ fmt.Printf(...阅读全文

博文 2018-08-20 10:35:10 次序

golang bytes

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/youshijian99/article/details/85225341 func HasPrefix(s, prefix []byte) bool 判断s是否有前缀切片prefix。 package main import ( "bytes" "fmt" ) func main() { // 判断字符串是否包含"hel" fmt.Println(bytes.HasPrefix([]byte("hello"), []byte("hel"))) fmt.Println(bytes.HasPrefix([]byte("heelo"), []byte("hel"))) } 运行结果: true fa...阅读全文

博文 2019-04-17 14:31:34 youshijian99

golang学习笔记5:字符串及相关函数

字符串是 UTF-8 字符的一个序列(当字符为 ASCII 码时则占用 1 个字节,其它字符根据需要占用 2-4 个字节)。UTF-8 是被广泛使用的编码格式,是文本文件的标准编码,其它包括 XML 和 JSON 在内,也都使用该编码。由于该编码对占用字节长度的不定性,Go 中的字符串也可能根据需要占用 1 至 4 个字节,这与其它语言如 C++、Java 或者 Python 不同(Java 始终使用 2 个字节)。Go 这样做的好处是不仅减少了内存和硬盘空间占用,同时也不用像其它语言那样需要对使用 UTF-8 字符集的文本进行编码和解码。字符串是一种值类型,且值不可变,即创建某个文本后你无法再次修改这个文本的内容;更深入地讲,字符串是字节的定长数组。Go 支持以下 2 种形式的字面值:解释...阅读全文

博文 2018-10-13 00:34:40 编程老司机

go实现“水仙花数”

题目: 打印出100-999中所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字 立方和等于该数本身。例如:153 是一个“水仙花数”,因为 153=1 的三次 方+5 的三次方+3 的三次方 我使用的是Go Modules 管理依赖方式引入下面的add包就可以了运行了 package add import ( "fmt" "strconv" ) func Sxhs() { var str string fmt.Scanf("%s", &str) var result = 0 fmt.Printf("%d \n", result) for i := 0; i < len(str); i++ { num := int(str[i] - '0') //字符串本身是ascii码 res...阅读全文

博文 2020-04-10 21:32:41 小兵

Go语言之父带你重新认识字符串、字节、rune和字符

以下文章翻译自罗伯·派克发表在Go Blog的文章,文章中为读者详述了Go语言中字符串与我们经常提起的字节、字符还有rune的关系和相互之间的不同。正如派克在文中所说 字符串这个话题对于一篇博客文章来说似乎太简单了,但是要很好地使用它们,不仅需要了解它们的工作原理,还需要了解字节,字符和 rune 的区别,以及 Unicode 和 UTF- 8,字符串和字符串直接量之间的区别,以及其他甚至更细微的区别。原文地址:https://blog.golang.org/strings 文章篇幅还是挺长的,大家时间都很宝贵所以我先把文章探究的问题的结论放在前面,有时间的同学还是建议整篇读一下。 Go 源代码始终为 UTF-8。 字符串可以包含任意字节。 字符串文字中不包含字节级转义符时字符串始终包含有效...阅读全文

博文 2020-02-11 19:32:39 Kevin

GO语言基础(一)2019-05-08

结束了第一章的学习,正式开始go语言的学习。我决定先去吃个午饭.下午两点十七分继续开始学习P31-P35:变量-变量需要声明(类C)注意事项:1、三种使用方式:(1)声明后不赋值则使用默认值。(int为0)(2)类型推导(类python)(3)省略var 用例如name:="tom"的方式,其中name不应该被声明过,:不能省略2、多变量声明与1相对应P36:数据类型简介 数据类型 P37-38:%T 变量类型 unsafe.Sizeof()变量的大小P39-P40:浮点型变量-golang的优势在于不依赖于操作系统,直接将数据的大小与内存大小相对应。P41-P42: 字符类型golang中字符用byte(int型的一种)来存储,可以理解为golang中没有字节类型,所以直接输出字符值,会现...阅读全文

博文 2019-05-09 03:34:56 竖琴犹奏相思苦

Golang动态规划

1143. 最长公共子序列 给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列。 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。 例如,"ace" 是 "abcde" 的子序列,但 "aec" 不是 "abcde" 的子序列。两个字符串的「公共子序列」是这两个字符串所共同拥有的子序列。 若这两个字符串没有公共子序列,则返回 0。 示例 1: 输入:text1 = "abcde", text2 = "ace" 输出:3 解释:最长公共子序列是 "ace",它的长度为 3。 示例 2: 输入:text1 = "abc", text2 = "abc" 输出:3 解释:最长公共...阅读全文

博文 2020-05-03 12:32:42 DoneIsBetter

Go语言入门(二)-流程控制

go流程控制 字符串详解 字符串原理 字符串底层就是一个byte数组,所以可以和[]byte类型互相转换 字符串中的字符是不能修改的 字符串是有byte字节组成,所以字符串的长度是byte字节的长度 rune类型(int32占四个字节)用来表示utf8字符,一个rune由一个或者多个byte组成 func stringByte() { var str string str = "abc你好" var b []byte = []byte(str) var c[]rune = []rune(str) fmt.Printf("%c\n",97) fmt.Printf("b=%v,\tlen(str)=%d\n",b,len(str)) fmt.Printf("%d\n",len(c)) } 练习 ...阅读全文

博文 2020-03-14 11:33:13 wx5b285b48ed74e

求 JSON 2个函数

~~~ 求下面的代码 有问题, 我需要 一个转换JSON 一个反序列化到MAP 方便修改值,思路这样的 比如生成JSON值 var a map[string]interface{} a["code"]="100" a["msg"]="ok" result := JSON_Serialize(a) //这样result得到一串JSON值了 ================ 反序列化 从数据库或则字符串获取得到一串JSON值 bb := `{"Code":"-1","Msg":"code error!"}` result2 :=JSON_Deserialize(bb) //然后修改一些值 修改完毕再转换JSON即可 result2["Code"]=="200" ...阅读全文

time4go

## 项目地址 [https://github.com/smartwalle/time4go](https://github.com/smartwalle/time4go) ## Time4Go Go 语言的时间工具库。 ## 帮助 在集成的过程中有遇到问题,欢迎加 QQ 群 564704807 讨论。 ## 安装 ```bash $ go get github.com/smartwalle/time4go ``` ## 开始 ```go package main import ( "fmt" "github.com/smartwalle/time4go" "time" ) ...阅读全文

Golang 学习笔记(3)—— 字符串操作

本文为转载,原文:Golang 学习笔记(3)—— 字符串操作 1、Contains func Contains(s, substr string) bool这个函数是查找某个字符是否在这个字符串中存在,存在返回true. package main import "fmt" import "strings" func main(){ fmt.Println(strings.Contains("chain", "ch")) fmt.Println(strings.Contains("ch", "chain")) fmt.Println(strings.Contains("chain", "")) //true fmt.Println(strings.Contains("", "")) //tr...阅读全文

博文 2017-08-14 11:05:04 ChainZhang

【Golang】处理时间的坑

需求 获取当前时间的字符串类型。 获取到时间之后,按照RFC3339的格式转换成time.Time类型 原版代码 package main import ( "fmt" "time" ) func main() { timeStr := time.Now().String() fmt.Println(timeStr) t, err := time.Parse(time.RFC3339, timeStr) if err != nil { fmt.Printf("err : %v", err) return } fmt.Println(t) } 原版代码输出结果 2020-03-24 22:44:01.8186776 +0800 CST m=+0.002997901 err : parsing ...阅读全文

博文 2020-03-25 12:32:43 冉小妹Ran

Delve代码分析笔记(2)——version

Version包只包含了一个version.go: package version import "fmt" // Version represents the current version of Delve. type Version struct { Major string Minor string Patch string Metadata string Build string } var ( // DelveVersion is the current version of Delve. DelveVersion = Version{Major: "0", Minor: "11", Patch: "0", Metadata: "alpha"} ) func (v Version...阅读全文

博文 2017-06-25 13:58:21 肖楠

面试经典算法:马拉松算法,最长回文子串Golang实现

求一个字符串中最长的回文子串。 a11.png package main import "fmt" /* 马拉松算法,求最长回文子串,时间复杂度:线性 */ func main() { // 回文数 str := "abcddcbadcbadcabdadacd" // 填充#变成奇数个元素 strArray := make([]byte, 0, 2*len(str)+1) // 每个字符是一个byte for i := 0; i < len(str); i++ { strArray = append(strArray, str[i]) strArray = append(strArray, '#') } fmt.Print("原始字符串:") for i := 0; i < len(strA...阅读全文

博文 2019-10-28 11:32:48 aside section._1OhGeD

golang 中获取字符串个数

golang 中获取字符串个数 在 golang 中不能直接用 len 函数来统计字符串长度,查看了下源码发现字符串是以 UTF-8 为格式存储的,说明 len 函数是取得包含 byte 的个数 // string is the set of all strings of 8-bit bytes, conventionally but not // necessarily representing UTF-8-encoded text. A string may be empty, but // not nil. Values of string type are immutable. 举个例子,”Hello, 世界“(因为,对比所以用了中文) s := "Hello, 世界" fmt.Pr...阅读全文

博文 2019-08-14 10:32:46 zrds2e

GoLang 字符串倒置

字符串倒置 Hello World --> dlroW olleH 解决方案1: length := len(str) array := make([]string , length) for i , v := range str{ array[i] = string(v) } for i := 0 ; i < length/2 ; i++ { array[i], array[length -i - 1] = array[length - i -1 ], array[i] } str = "" for _ , v := range array { str += v } 大致想法是: str -循环-> array -循环-> 倒置 --循环--> str 可以转换中文. 问题: 看上去比较繁...阅读全文

博文 2017-09-29 03:35:10 小立立

golang 字符串

//判断字符串 s 是否以 prefix 开头 var str string = "This is, an example of a string " hasprefix := strings.HasPrefix(str, "Th") fmt.Println(hasprefix) //判断字符串 s 是否以 suffix 结尾 suffix := strings.HasSuffix(str, "ig") fmt.Println(suffix) //判断字符串 s 是否包含 substr constains := strings.Contains(str, "wxc") fmt.Println(constains) //判断子字符串或字符在父字符串中出现的位置 index := strings...阅读全文

博文 2020-05-31 09:32:47 对方正在输入_5723

httprouter解读(continuing)

httprouter解读 核心思想 与defaultServeMux的实现区别在于什么?采取特殊的数据结构作路由。 defaultServeMux的实现采用什么样的数据结构? httprouter的实现采用什么样的数据结构? router的架构图是怎样的,与server.go有何异同 一些http相关的细节 其他细节 细读源码 Router的 paramsPool?sync.Pool需要看看 done 修复重定向是代码大头,得细细解读重定向相关的协议内容 这部分先跳过吧,细节太多了 http包的server.go里面req的context里面包含了params怎么取消的。done “server.serve => conn.serve ==>defer cancleCtx/ w.cancel...阅读全文

博文 2019-11-16 23:32:43 weicao

golang的strings,strconv

package main import ( "fmt" "strings" "strconv" ) func main() { var str = ` 床前明月光, 疑是地上霜。 ` fmt.Println(str) var a = "66666" fmt.Println(a) fmt.Println(strings.Fields("abc def ghi")) //替换两边的a(可以是连续多个a) fmt.Println(strings.Trim("aabbaabcbbaa","a")) //替换所有a,b fmt.Println(strings.Trim("abbaabcbba","ab")) //替换左边的ab(可以是连续多个a或b) fmt.Println(strings.TrimL...阅读全文

博文 2019-01-22 13:38:00 梁十八