在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
相关用法
- Golang math.Lgamma()用法及代码示例
- Golang math.Float64bits()用法及代码示例
- Golang atomic.AddInt64()用法及代码示例
- Golang atomic.StoreInt64()用法及代码示例
- Golang reflect.FieldByIndex()用法及代码示例
- Golang string.Contains用法及代码示例
- Golang bits.Sub()用法及代码示例
- Golang io.PipeWriter.CloseWithError()用法及代码示例
- Golang time.Round()用法及代码示例
- Golang reflect.AppendSlice()用法及代码示例
- Golang reflect.ChanOf()用法及代码示例
- Golang flag.Bool()用法及代码示例
- Golang time.Sleep()用法及代码示例
- Golang time.Time.Year()用法及代码示例
- Golang reflect.DeepEqual()用法及代码示例
- Golang reflect.Indirect()用法及代码示例
- Golang reflect.CanAddr()用法及代码示例
- Golang reflect.CanInterface()用法及代码示例
- Golang reflect.CanSet()用法及代码示例
- Golang reflect.Cap()用法及代码示例
注:本文由纯净天空筛选整理自Kanchan_Ray大神的英文原创作品 fmt.Sscanf() Function in Golang With Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。