gpt4 book ai didi

go - 在golang中的字符或字符串之前从字符串中grep子字符串的最佳方法

转载 作者:IT王子 更新时间:2023-10-29 01:48:54 26 4
gpt4 key购买 nike

我得到 net.Conn.RemoteAddr() 是这样的:

192.168.16.96:64840

我只需要没有端口号的IP地址

...
str := conn.RemoteAddr().String()
strSlice := strings.Split(str, ":")
ipAddress := strSlice[0]
...

有什么简单的方法吗?

最佳答案

你可以像这样使用net.SplitHostPort

ip, _, err := net.SplitHostPort(conn.RemoteAddr().String())
if err != nil {
fmt.Println(err)
return
}
fmt.Println(ip)

上试试 Playground

为了回答 OP 在上面评论中的问题,net.SplitHostPort 已经处理了 IPv6。给定字符串

net.SplitHostPort("[2001:db8:85a3:0:0:8a2e:370]:7334")

将按预期工作。

关于go - 在golang中的字符或字符串之前从字符串中grep子字符串的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36027315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com