我有一個由分隔的路徑,/并且期望有多個我想用一個常量值替換的 id。我面臨的問題是,一旦它驗證了第一個 id,它就會執行替換并停止。我的假設是我應該在 Golang 中做一些事情(請參閱此資源- 我知道 Go 中沒有這樣的構造)并且我嘗試使用:
for true {
// do something
}
但仍然只有第一個 id 被替換。任何想法?謝謝
這是我的 Go Playground示例和原始實作
uj5u.com熱心網友回復:
問題是你在第一場比賽后過早return。由于您迭代路徑的一部分,您應該將結果分配strings.Replace()給一個變數并在 for 回圈之后回傳。分配給path而不是回傳,它應該按預期作業。
func SubstituteById(path string, repl string) string {
ids := strings.Split(path, "/")
for _, id := range ids {
if fastuuid.ValidHex128(id) {
path = strings.Replace(path, id, repl, -1)
}
}
return path
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/443012.html
上一篇:無法在bitbucktCI上運行golangci-lint
下一篇:Golang-創建結構陣列?
