Golang判斷url字首

大雄45發表於2022-11-09
導讀 使用 Golang 實現,如果 url 沒有 http 字首,則給其加上字首。
題目

修改 fetch 這個範例,如果輸入的 url 引數沒有 http:// 字首的話,為這個 url 加上該字首。你可能會用到 strings.HasPrefix 這個 函式。

題目解決思路

我們只需要使用 strings.HasPrefix 判斷 url 是否有 http 字首,如果沒有,那麼就用 字串拼接 在 url 前面加上字首。

程式碼具體實現
package main
import (
	"fmt"
	"io"
	"net/http"
	"os"
	"strings"
)
func main() {
	fmt.Println("嗨客網()")
	for _, url := range os.Args[1:] {
		if !strings.HasPrefix(url, ") {
			url = strings.Join([]string{", url}, "")
		}
		resp, err := http.Get(url)
		if err != nil {
			fmt.Fprintf(os.Stderr, "fetch: %v\n", err)
			os.Exit(1)
		}
		b, err := io.Copy(os.Stdout, resp.Body)
		resp.Body.Close()
		if err != nil {
			fmt.Fprintf(os.Stderr, "fetch: %v\n", err)
			os.Exit(1)
		}
		fmt.Printf("%s", b)
	}
}

我們輸入以下 行,開始執行程式:

go run haicoder.go

程式執行後,控制檯輸出如下:

Golang判斷url字首Golang判斷url字首

這次,我們輸入的 url 沒有輸入字首 “http”,我們可以看到,我們的程式同樣輸出了 “嗨客網” 首頁的內容。這是因為,我們在程式裡面使用了 if 判斷 如果沒有字首,那麼就使用 strings.Join 拼接一個字首。

原文來自:、


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2904967/,如需轉載,請註明出處,否則將追究法律責任。

相關文章