Golang小例 命令行正则
发布时间:2020-12-16 18:47:41 所属栏目:大数据 来源:网络整理
导读:package mainimport ( "bufio" "flag" "fmt" "os" "regexp")func main() { defer func() { return }() data := flag.String("data","This is a example for test!","Type: Text!") length := flag.Bool("len",false,"Type: Bool!") r := flag.Bool("r","Type
package main import ( "bufio" "flag" "fmt" "os" "regexp" ) func main() { defer func() { return }() data := flag.String("data","This is a example for test!","Type: Text!") length := flag.Bool("len",false,"Type: Bool!") r := flag.Bool("r","Type: Bool!") reString := flag.String("re","(a)","Type: Text!") findCount := flag.Int("count",-1,"Type: Int!") first := flag.Int("array",65537,"Type: Int!") second := flag.Int("resault","Type: Int!") pipe := flag.Bool("pipe","Type: Bool!" flag.Parse() if *pipe { reader := bufio.NewReader(os.Stdin) tempData,_,_ := reader.ReadLine() *data = string(tempData) } reg := regexp.MustCompile(*reString) resault := reg.FindAllStringSubmatch(*data,*findCount) if *length { fmt.Println(len(resault)) return } if *r { for temp := 0; temp < len(resault); temp++ { if len(resault[temp]) != 1 { for rtemp := 1; rtemp < len(resault[temp]); rtemp++ { fmt.Println(resault[temp][rtemp]) } } else { fmt.Println("") } } return } if *first != 65537 { if *second != 65537 { fmt.Println(resault[*first][*second]) return } fmt.Println(resault[*first]) return } fmt.Println(resault) return }
命令行正则筛选 使用命令:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |