分享
  1. 首页
  2. 文章

[笔记] Golang String

loveyx · · 5428 次点击 · · 开始浏览
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

 1 package main
 2 
 3 import (
 4 "fmt"
 5 "strconv"
 6 "strings"
 7 )
 8 
 9 func main() {
10 // strings demo
11  Contains()
12  Join()
13  Index()
14  Repeat()
15  Replace()
16  Split()
17 
18 // strconv demo
19  AppendDemo()
20  FormatDemo()
21  ParseDemo()
22 }
23 
24 func Contains() {
25 fmt.Println(strings.Contains("seafood", "foo")) //true
26 fmt.Println(strings.Contains("seafood", "bar")) //false
27 }
28 
29 func Join() {
30 s := []string{"foo", "bar", "baz"}
31 fmt.Println(strings.Join(s, ",")) // foo,bar,baz
32 }
33 
34 func Index() {
35 fmt.Println(strings.Index("chicken", "ken")) // 4
36 fmt.Println(strings.Index("chicken", "dmr")) // -1
37 }
38 
39 func Repeat() {
40 fmt.Println("ba" + strings.Repeat("na", 2)) // banana
41 }
42 
43 func Replace() {
44 fmt.Println(strings.Replace("oink oink oink", "k", "ky", 2)) // oinky oinky oink
45 fmt.Println(strings.Replace("oink oink oink", "oink", "moo", -1)) // moo moo moo
46 }
47 
48 func Split() {
49 fmt.Printf("%q\n", strings.Split("a,b,c", ",")) //["a" "b" "c"]
50 fmt.Printf("%q\n", strings.Split("a man a plan a canal panama", "a ")) //["" "man " "plan " "canal panama"]
51 fmt.Printf("%q\n", strings.Split(" xyz ", "")) //[" " "x" "y" "z" " "]
52 fmt.Printf("%q\n", strings.Split("", "Bernardo O'Higgins")) //[""]
53 }
54 
55 func AppendDemo() {
56 str := make([]byte, 0, 100)
57 str = strconv.AppendInt(str, 4567, 10)
58 str = strconv.AppendBool(str, false)
59 str = strconv.AppendQuote(str, "abcdefg")
60 str = strconv.AppendQuoteRune(str, '')
61 fmt.Println(string(str)) //4567false"abcdefg"''
62 }
63 
64 func FormatDemo() {
65 a := strconv.FormatBool(false)
66 b := strconv.FormatFloat(123.23, 'g', 12, 64)
67 c := strconv.FormatInt(1234, 10)
68 d := strconv.FormatUint(12345, 10)
69 e := strconv.Itoa(1023)
70 fmt.Println(a, b, c, d, e) // false 123.23 1234 12345 1023
71 }
72 
73 func ParseDemo() {
74 a, err := strconv.ParseBool("false")
75  handleErr(err)
76 b, err := strconv.ParseFloat("123,23", 64)
77  handleErr(err)
78 c, err := strconv.ParseInt("1234", 10, 64)
79  handleErr(err)
80 d, err := strconv.ParseUint("12345", 10, 64)
81  handleErr(err)
82 e := strconv.Itoa(1023)
83  handleErr(err)
84 fmt.Println(a, b, c, d, e) // false 0 1234 12345 1023
85 }
86 
87 func handleErr(err error) {
88 if err != nil {
89  fmt.Println(err)
90  }
91 }

有疑问加站长微信联系(非本文作者)

本文来自:博客园

感谢作者:loveyx

查看原文:[笔记] Golang String

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

关注微信
5428 次点击
0 回复
暂无回复
添加一条新回复 (您需要 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传

用户登录

没有账号?注册
(追記) (追記ここまで)

今日阅读排行

    加载中
(追記) (追記ここまで)

一周阅读排行

    加载中

关注我

  • 扫码关注领全套学习资料 关注微信公众号
  • 加入 QQ 群:
    • 192706294(已满)
    • 731990104(已满)
    • 798786647(已满)
    • 729884609(已满)
    • 977810755(已满)
    • 815126783(已满)
    • 812540095(已满)
    • 1006366459(已满)
    • 692541889

  • 关注微信公众号
  • 加入微信群:liuxiaoyan-s,备注入群
  • 也欢迎加入知识星球 Go粉丝们(免费)

给该专栏投稿 写篇新文章

每篇文章有总共有 5 次投稿机会

收入到我管理的专栏 新建专栏