为了账号安全,请及时绑定邮箱和手机立即绑定

在 Go 中检索类似 URL 的字符串中的第一个目录

在 Go 中检索类似 URL 的字符串中的第一个目录

Go
拉莫斯之舞 2022-10-17 19:30:39
我正在尝试获取类似 URL 的字符串中的第一个目录,如下所示"/blog/:year/:daynum/:postname":我认为拆分它,然后检索第一个目录,就这么简单。但即使它不是切片,它也会返回围绕字符串的方括号。我怎样才能得到第一个目录?(我保证该字符串以“/”开头,后跟一个有效的目录名称,并且包含前导目录和使用这些永久链接属性的字符串)。解析第一个目录的最佳方法是什么?package mainimport (    "fmt"    "strings")// Retrieve the first directory in the URL-like// string passed infunc firstDir(permalink string) string {    split := strings.Split(permalink, "/")    return string(fmt.Sprint((split[0:2])))}func main() {    permalink := "/blog/:year/:daynum/:postname"    dir := firstDir(permalink)    fmt.Printf("leading dir is: %s.", dir)    // Prints NOT "blog" but "[ blog]".}
查看完整描述

1 回答

?
慕娘9325324

TA贡献1783条经验 获得超4个赞

既然您说:“(我保证该字符串以“/”开头,后跟一个有效的目录名称,并且包含前导目录和使用这些永久链接属性的字符串)”


然后简单地使用split[1]获取根目录。


package main


import (

    "fmt"

    "os"

    "strings"

)


func firstDir(permalink string) string {

    split := strings.Split(permalink, string(os.PathSeparator))

    return split[1]

}

func main() {

    permalink := "/blog/:year/:daynum/:postname"

    dir := firstDir(permalink)

    fmt.Printf("leading dir is: %s.", dir)

    // Prints "blog".

}

https://go.dev/play/p/hCHnrDIsWYE


查看完整回答
反对 回复 2022-10-17
  • 1 回答
  • 0 关注
  • 134 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信