ZBLOG

golang检查字符串中是否存在子串,例如ens10@10.182.1.2/24,10.182.1.3/24,10.182.1.4/24是否存在10.182.1.4/24

在 Go 语言中,可以使用 strings.Contains 函数来检查一个字符串是否包含另一个子串。下面是如何检查给定的字符串中是否存在指定的子串(例如 "10.182.1.4/24")的示例:

package main

import (
	"fmt"
	"strings"
)

func main() {
	str := "ens10@10.182.1.2/24,10.182.1.3/24,10.182.1.4/24"
	substr := "10.182.1.4/24"

	if strings.Contains(str, substr) {
		fmt.Printf("字符串中存在子串: '%s'\n", substr)
	} else {
		fmt.Printf("字符串中不存在子串: '%s'\n", substr)
	}
}

输出

字符串中存在子串: '10.182.1.4/24'

说明

  • strings.Contains:此函数接受两个参数,第一个是原始字符串,第二个是要查找的子串。如果原始字符串包含该子串,则返回 true;否则返回 false
  • 注意,这种方法是大小写敏感的,因此需要确保比较时的一致性。

如果你只想查找以逗号分隔的完整地址,也可以考虑将整个字符串拆分成片段,然后逐一比较。比如:

package main

import (
	"fmt"
	"strings"
)

func main() {
	str := "ens10@10.182.1.2/24,10.182.1.3/24,10.182.1.4/24"
	substr := "10.182.1.4/24"

	// 将原始字符串按逗号分割成切片
	subnets := strings.Split(str, ",")

	for _, subnet := range subnets {
		if subnet == substr {
			fmt.Printf("找到完整匹配的子网: '%s'\n", subnet)
			return
		}
	}

	fmt.Printf("未找到完整匹配的子网: '%s'\n", substr)
}

输出

找到完整匹配的子网: '10.182.1.4/24'

这种方法更加精确,因为它确保了只匹配到完整项,而不是部分匹配。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=18791

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?