第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Go Language:一種標記字符串的方法

Go Language:一種標記字符串的方法

Go
不負相思意 2021-11-08 18:20:01
我有一個 Go 程序,我需要在其中搜索特定模式的多個字符串。字符串看起來像這樣: Destination: 149.164.31.169 (149.164.31.169)我只想提取 IP 149.164.31.169,無論是中間的還是括號中的,它們總是相同的。在 Java 中,我會使用字符串標記器來收集我需要的字符串部分,但我沒有在 go 中找到類似的函數(shù)。有誰知道我如何實現(xiàn)這一目標?
查看完整描述

2 回答

?
楊__羊羊

TA貢獻1943條經(jīng)驗 獲得超7個贊

您可以只拆分空格并取中間的一個:


s := "Destination: 149.164.31.169 (149.164.31.169)"

parts := strings.Split(s, " ")

if len(parts) != 3 {

    panic("Should have had three parts")

}

println(parts[1])

還有很多其他方法。該strings包是看的地方。當然,如果您需要更復(fù)雜的東西,您可以查看regex正則表達式,但這在這里有點過頭了。如果你真的需要一個分詞器,看看text/scanner,但同樣,這太過分了。


查看完整回答
反對 回復(fù) 2021-11-08
?
墨色風(fēng)雨

TA貢獻1853條經(jīng)驗 獲得超6個贊

您也可以fmt.Sscanf為此使用:


package main

import "fmt"


func extractIP(s string) string {

   var ip string

   fmt.Sscanf(s, "Destination: %v", &ip)

   return ip

}


func main() {

   ip := extractIP("Destination: 149.164.31.169 (149.164.31.169)")

   fmt.Println(ip == "149.164.31.169")

}

https://golang.org/pkg/fmt#Sscanf


查看完整回答
反對 回復(fù) 2021-11-08
  • 2 回答
  • 0 關(guān)注
  • 223 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號