我做错了什么?为什么ToUpper无法使用?
package main
import (
"fmt"
"regexp"
"strings"
)
func main() {
r := regexp.MustCompile("(\\w)(\\w+)")
// Getting "sometext" instead of "SomeText"
res := r.ReplaceAllString("some text", strings.ToUpper("$1") + "$2")
fmt.Println(res)
}
最佳答案
恐怕您不能使用$1
和$2
!
我认为您正在尝试将“某些文本”转换为“SomeText”。
Here is an alternative solution
package main
import (
"fmt"
"regexp"
"strings"
)
func main() {
r := regexp.MustCompile(`\s*\w+\s*`)
res := r.ReplaceAllStringFunc("some text", func(s string) string {
return strings.Title(strings.TrimSpace(s))
})
fmt.Println(res)
}
关于go - 使用ReplaceAllString和ToUpper无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16456184/