zoukankan      html  css  js  c++  java
  • golang orm

      1 第一单元 常用标准包(一)
      2 
      3 1.学习目标
      4 
      5 1. 掌握strings常用函数使用
      6 2. 掌握strconv常用函数使用
      7 3. 熟悉encoding常用函数使用
      8 
      9 2.strings标准包
     10 
     11 2.1 Contains
     12 
     13 用途:字符串包含关系
     14 
     15 用法: strings.Contains(s, substr string) bool
     16 
     17 代码示例
     18 
     19     package main
     20     
     21     import (
     22         "fmt"
     23         "strings"
     24     )
     25     
     26     func main() {
     27         studentName := "Jim"
     28         fmt.Println(strings.Contains(studentName, "im")) //包含关系 true/false
     29     
     30     }
     31     
     32 
     33 2.2 HasSuffix
     34 
     35 用途:包含前缀
     36 
     37 用法: strings.HasSuffix(s, substr string) bool
     38 
     39 代码示例
     40 
     41     studentName := "Jim" 
     42     fmt.Println(strings.HasSuffix(studentName, "im"))
     43 
     44 2.3 HasPrefix
     45 
     46 用途:前缀
     47 
     48 用法:strings.HasPrefix(s, prefix string) bool
     49 
     50 代码示例
     51 
     52     package main
     53     
     54     import (
     55         "fmt"
     56         "strings"
     57     )
     58     
     59     func main() {
     60     
     61         studentName := "Jim"
     62         fmt.Println(strings.HasSuffix(studentName, "im"))
     63     
     64     }
     65     
     66 
     67 2.4 Index
     68 
     69 用途:子串索引
     70 
     71 用法:strings.Index(s, str string)  int
     72 
     73 Index返回字符串str在字符串s中的索引(str的第一个字符的索引)
     74 
     75 -1表示字符串s不包含字符串str
     76 
     77 代码示例
     78 
     79     package main
     80     
     81     import (
     82         "fmt"
     83         "strings"
     84     )
     85     
     86     func main() {
     87         str := "hello"
     88         fmt.Println(strings.Index(str, "e"))
     89     }
     90 
     91 2.5 Replace
     92 
     93 用途:字符串替换
     94 
     95 用法:strings.Replace(s, old, new string, n int) string
     96 
     97 代码示例
     98 
     99     package main
    100     
    101     import (
    102         "fmt"
    103         "strings"
    104     )
    105     
    106     func main() {
    107         str := "goooooole"
    108         fmt.Println(strings.Replace(str, "o", "P", -1))
    109     
    110         fmt.Println("non-overlapping: ")
    111         // n < 0 ,用 替换所有匹配;n=-1:
    112         fmt.Println("n=-1: ", strings.Replace(str, "o", "P", -1))
    113     
    114         // 不替换任何匹配的 n=0:
    115         fmt.Println("n=0: ", strings.Replace(str, "o", "P", 0))
    116     
    117         // 替换第一个匹配的 old;n=1:
    118         fmt.Println("n=1: ", strings.Replace(str, "o", "P", 1))
    119     
    120         // 替换前 5 个匹配的;n=5:
    121         fmt.Println("n=5: ", strings.Replace(str, "o", "P", 5))
    122     
    123         // 替换前 7 个匹配上的;n=7:
    124         fmt.Println("n=7: ", strings.Replace(str, "o", "P", 7))
    125     }
    126     
    127     
    128 
    129 2.6 join
    130 
    131 用途:把[]string的切片合并成一个string,并且以sep为分隔符
    132 
    133 用法: strings.Join(s []string,sep string) string
    134 
    135 代码示例
    136 
    137     package main
    138     
    139     import (
    140         "fmt"
    141         "strings"
    142     )
    143     
    144     func main() {
    145         a := "hahaha"
    146         b := "hehehe"
    147         c := strings.Join([]string{a, b}, ",")
    148         fmt.Println(c)
    149     
    150     }
    151 
    152 2.8 Split
    153 
    154 用途:切割字符串为数组
    155 
    156 用法:array strings.Split(s,sep) 
    157 
    158 示例:
    159 
    160     package main
    161     
    162     import (
    163         "fmt"
    164         "strings"
    165     )
    166     
    167     func main() {
    168         s := strings.Split("a,b,c,d", ",")
    169         fmt.Println(s)
    170     
    171     }
    172 
    173 2.9 ToUpper
    174 
    175 用途:转为小写
    176 
    177 用法:strings.ToUpper(s)  string
    178 
    179     package main
    180     
    181     import (
    182         "fmt"
    183         "strings"
    184     )
    185     
    186     func main() {
    187         str2 := "hello,world"
    188         fmt.Println(strings.ToUpper(str2)) //转为大写 输出结果:HELLO,WORLD
    189     
    190     }
    191 
    192 
    193 
    194 2.10 ToLower
    195 
    196 用途:转为小写
    197 
    198 用法:strings.ToLower(string)  string
    199 
    200     package main
    201     
    202     import (
    203         "fmt"
    204         "strings"
    205     )
    206     
    207     func main() {
    208         str2 := "hello,world"
    209         fmt.Println(strings.ToLower(str2)) //转为小写 输出结果:HELLO,WORLD
    210     }
    211     
    212 
    213 2.11 Trim
    214 
    215 用途:返回将 s 前后端所有 cutset 包含的 utf-8 码值都去掉的字符串
    216 
    217 用法:strings.Trim(s string, cutset string) string
    218 
    219     package main
    220     
    221     import (
    222         "fmt"
    223         "strings"
    224     )
    225     func main() {
    226         str2 := "   hello,world   |"
    227         fmt.Println(strings.Trim(str2, "|")) 
    228     
    229     }
    230 
    231 
    232 
    233 2.12 TrimSpace
    234 
    235 用途:将最前面和最后面的ASCII定义的空格去掉,中间的空格不会去掉,如果遇到了等其他字符会认为是非空格
    236 
    237 用法:strings.TrimSpace(s string) string
    238 
    239     package main
    240     
    241     import (
    242         "fmt"
    243         "strings"
    244     )
    245     
    246     func main() {
    247         str2 := "   hello,world   "
    248         fmt.Println(strings.TrimSpace(str2)) //转为大写 输出结果:HELLO,WORLD
    249     
    250     }
    251 
    252 2.13 TrimLeft
    253 
    254 用途:去掉字符串首cut字符
    255 
    256 用法:strings.TrimLeft(str string, cut string)
    257 
    258     package main
    259     
    260     import (
    261         "fmt"
    262         "strings"
    263     )
    264     
    265     func main() {
    266         str2 := "   hello,world   "
    267         fmt.Println(strings.TrimLeft(str2, " "))
    268     }
    269     
    270 
    271 2.14 TrimRight
    272 
    273 用途:去掉字符串末尾cut字符
    274 
    275 用法:strings.TrimSpace(s string) string
    276 
    277     package main
    278     
    279     import (
    280         "fmt"
    281         "strings"
    282     )
    283     
    284     func main() {
    285         str2 := "   hello,world   "
    286         fmt.Println(strings.TrimRight(str2)) //转为大写 输出结果:HELLO,WORLD
    287     
    288     }
    289 
    290 
    291 
    292 3.strconv标准包
    293 
    294 3.1 Atoi()
    295 
    296 用途:字符串转换为整型
    297 
    298 用法:strconv.Atoi(string)
    299 
    300 示例:
    301 
    302     package main
    303     
    304     import (
    305         "fmt"
    306         "strconv"
    307     )
    308     
    309     func main() {
    310         //strconv的使用
    311     
    312         s1 := "100"
    313         fmt.Printf("s1转换之前的类型:%T
    ", s1)
    314         i1, err := strconv.Atoi(s1)
    315         if err != nil {
    316             fmt.Println("can't convert to int")
    317         } else {
    318             fmt.Printf("type:%T value:%v
    ", i1, i1) //type:int value:100
    319         }
    320     
    321         i2 := 200
    322         s2 := strconv.Itoa(i2)
    323         fmt.Printf("type:%T value:%v
    ", s2, s2) //type:string value:"200"
    324     
    325     }
    326 
    327 2.8 Itoa()
    328 
    329 用途:整型转为字符串
    330 
    331 用法:int strings.Itoa(s) 
    332 
    333 示例:
    334 
    335     package main
    336     
    337     import (
    338         "fmt"
    339         "strconv"
    340     )
    341     
    342     func main() {
    343         //strconv的使用
    344         i2 := 200
    345         s2 := strconv.Itoa(i2)
    346         fmt.Printf("type:%T value:%v
    ", s2, s2) //type:string value:"200"
    347     
    348     }
    349 
    350 
    351 
    352 4.encoding标准包
    353 
    354 4.1 base64编码概念
    355 
    356 Base64是一种最常见的用于传输8Bit字节码的编码方式
    357 
    358 4.2 base64 编码
    359 
    360 用途:base64编码
    361 
    362 用法:string base64.StdEncoding.EncodeToString(string)
    363 
    364 示例:
    365 
    366     package main
    367     
    368     import (
    369         "encoding/base64"
    370         "fmt"
    371     )
    372     
    373     func main() {
    374         input := []byte("hello world")
    375         // 演示base64编码
    376         encodeString := base64.StdEncoding.EncodeToString(input)
    377         fmt.Println(encodeString)
    378     
    379     }
    380 
    381 4.3 base64 解码
    382 
    383 用途:base64解码
    384 
    385 用法: base64.StdEncoding.DecodeString(string) string
    386 
    387 示例:
    388 
    389     package main
    390     
    391     import (
    392         "fmt"
    393         "encoding/base64"
    394     )
    395     
    396     func main() {
    397         input := []byte("hello world")
    398         // 演示base64编码
    399         encodeString := base64.StdEncoding.EncodeToString(input)
    400         fmt.Println(encodeString)
    401     
    402         // 对上面的编码结果进行base64解码
    403         decodeBytes, err := base64.StdEncoding.DecodeString(encodeString)
    404         if err != nil {
    405             log.Fatalln(err)
    406         }
    407         fmt.Println(string(decodeBytes))
    408     
    409     }
  • 相关阅读:
    11月2日
    Rain和小爱的幸福山洞
    乍冷初寒
    支付宝接口源代码
    因没有设置文件夹权限导致的发布的页面不能在文本中写人数据
    asp.net真的是并行处理request的吗?
    Javascript学习笔记
    .net Windows服务程序和安装程序制作图解
    String.Trim()真相大揭秘
    c#基础知识总结学习
  • 原文地址:https://www.cnblogs.com/xfsong/p/13061216.html
Copyright © 2011-2022 走看看