Golang小例 命令列正則

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
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", false, "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", 65537, "Type: Int!")    pipe := flag.Bool("pipe", false, "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}

  命令列正則篩選             使用命令:                                                                                                  
-data 內容
-re Regex
-count 匹配次數(預設-1全部匹配)
-array 數組選擇
-resault 結果選擇(1、運算式全部匹配  2、匹配括弧內部)
-len 返回結果數目
-r 開啟遞迴顯示所有結果
-pipe 開啟管道
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.