Go範例:數字剖析

對許多程式而言,從字串剖析數字是一項基本的常見任務;以下將說明在Go中如何執行此項作業。

package main

內建套件strconv提供數字剖析功能。

import (
    "fmt"
    "strconv"
)
func main() {

使用ParseFloat,這個64代表要剖析多少位元的精度。

    f, _ := strconv.ParseFloat("1.234", 64)
    fmt.Println(f)

對於ParseInt0代表從字串推斷進制。64需要結果符合64位元。

    i, _ := strconv.ParseInt("123", 0, 64)
    fmt.Println(i)

ParseInt會辨識十六進位數字。

    d, _ := strconv.ParseInt("0x1c8", 0, 64)
    fmt.Println(d)

ParseUint亦可用。

    u, _ := strconv.ParseUint("789", 0, 64)
    fmt.Println(u)

Atoi是一個適用於基本10進位int剖析的便利函數。

    k, _ := strconv.Atoi("135")
    fmt.Println(k)

剖析函數會對錯誤的輸入傳回錯誤訊息。

    _, e := strconv.Atoi("wat")
    fmt.Println(e)
}
$ go run number-parsing.go 
1.234
123
456
789
135
strconv.ParseInt: parsing "wat": invalid syntax

接下來我們將瞭解另一個常見的剖析任務:網址。

下一個範例:網址剖析