• golang fmt.Ssanf详解


    Golang fmt.Sscanf()实例讲解
    时间:2022-04-07
    本文章向大家介绍Golang fmt.Sscanf()实例讲解,主要分析其语法、参数、返回值和注意事项,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
    在Go语言中,fmt软件包使用与C的printf()和scanf()函数相似的函数来实现格式化的I /O。 Go语言中的fmt.Sscanf()函数扫描指定的字符串,并将以空格分隔的连续值存储到由格式确定的连续参数中。此外,该函数在fmt包下定义。在这里,您需要导入“fmt”包才能使用这些函数。

    用法:

    func Sscanf(str string, format string, a ...interface{}) (n int, err error)
    参数:此函数接受三个参数,如下所示:

    str string:此参数包含将要扫描的指定文本。
    format string:对于指定字符串的每个元素,此参数是不同的格式类型。
    a …interface{}:此参数接收字符串的每个元素。
    返回值:它返回成功解析的项目数。

    范例1:

    // Golang program to illustrate the usage of
    // fmt.Sscanf() function

    // Including the main package
    package main

    // Importing fmt
    import (
    "fmt"
    )

    // Calling main
    func main() {

    // Declaring two variables
    var name string
    var alphabet_count int

    // Calling the Sscanf() function which
    // returns the number of elements
    // successfully parsed and error if
    // it persists
    n, err:= fmt.Sscanf("GFG is having 3 alphabets.",
    "%s is having %d alphabets.", &name, &alphabet_count)

    // Below statements get
    // executed if there is any error
    if err != nil {
    panic(err)
    }

    // Printing the number of
    // elements and each elements also
    fmt.Printf("%d:%s, %d\n", n, name, alphabet_count)

    }
    输出:

    2:GFG, 3
    范例2:

    // Golang program to illustrate the usage of
    // fmt.Sscanf() function

    // Including the main package
    package main

    // Importing fmt
    import (
    "fmt"
    )

    // Calling main
    func main() {

    // Declaring some variables
    var name string
    var alphabet_count int
    var float_value float32
    var boolean_value bool

    // Calling the Sscanf() function which
    // returns the number of elements
    // successfully parsed and error if
    // it persists
    n, err:= fmt.Sscanf("GeeksforGeeks 13 6.7 true",
    "%s %d %g %t", &name, &alphabet_count,
    &float_value, &boolean_value)

    // Below statements get executed
    // if there is any error
    if err != nil {
    panic(err)
    }

    // Printing the number of elements
    // and each elements also
    fmt.Printf("%d:%s, %d, %g, %t", n, name,
    alphabet_count, float_value, boolean_value)

    }
    输出:

    4:GeeksforGeeks, 13, 6.7, true

  • 相关阅读:
    mysql基础命令(一)
    vue组件之间的通信
    wepy的使用
    mockjs中的方法(三)
    每周散记 20181022
    api资源
    三七
    画中画 视频合成
    每周散记 20180910
    linux文件权限多一个+啥意思
  • 原文地址:https://www.cnblogs.com/cheyunhua/p/16855987.html
Copyright © 2020-2023  润新知