编程语言为 golang , 例如实现一个 cut 命令的这个功能: cut -d "" 指定分隔符为制表符, 而当程序运行时, 指定的""在程序中已经变成了"\t",不是自己想要的制表符, 应该如何解决?
package main
import (
"flag"
"fmt"
"strings"
)
// D use -d to specify a separator
var D = flag.String("d", "", "use -d to specify a separator")
func main() {
flag.Parse()
originStr := "abcd e f g"
var resultStr []string
if *D != "" {
resultStr = strings.Split(originStr, *D)
}
fmt.Println(*D)
for i := 0; i < len(resultStr); i++ {
fmt.Println(resultStr[i])
}
}
编译: go build -o cut
? test ./cut -d " " 以空格为分隔符
a b c d
e
f
g
? test ./cut -d "" 以"" 为分隔符, 被转义成普通字符串了
a b c d e f g
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…