Go语言 fmt.Sscanf()函数
fmt.Sscanf()语法
func Fscanf(str string, format string, a ...any) (n int, err error)
go源码对fmt.Sscanf()的介绍
Sscanf scans the argument string, storing successive space-separated values into successive arguments as determined by the format. It returns the number of items successfully parsed. Newlines in the input must match newlines in the format.
如上语法,Golang标准库中fmt模块的Sscanf()方法,根据将字符串str中的数据,按照空格分隔的顺序,并结合format中指定的格式,逐一读取写入到a指定的变量之中。
fmt.Sscanf()参数
参数 | 描述 |
---|---|
str | 使用空格进行分隔的字符串; |
format | 格式字符串,比如"%d, %f"等; |
a | 一个或多个变量,用于存储从str中读取到的数据; |
fmt.Sscanf()方法返回值
n:读取到的字符串(空格分隔符分隔的子串)个数。err:在读取过程中可能遇到的error。
fmt.Sscanf()方法实例代码
package main
import (
"fmt"
)
func main() {
var str = "Hello 全栈开发助手 123"
var x string
var y string
var z int
n, err := fmt.Sscanf(str, "%s %s %d", &x, &y, &z)
if err == nil {
fmt.Printf("fmt.Scanf()函数扫描的字符串个数为:%d, 空格分隔符分隔的第一个数据为:%s;第二个为:%s;第三个为:%d", n, x, y, z)
}
}
代码运行,得到输出:
fmt.Scanf()函数扫描的字符串个数为:3, 空格分隔符分隔的第一个数据为:Hello;第二个为:全栈开发助手;第三个为:123
免责声明:内容仅供参考,不保证正确性。