第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何檢查文件是否包含字符串?

如何檢查文件是否包含字符串?

Go
小唯快跑啊 2022-01-10 15:11:28
我試圖在谷歌上搜索文件和字符串之間的模式匹配功能,但我找不到它。我也嘗試過(guò)使用strings.Contains(),但它在大輸入文件中給出了錯(cuò)誤的結(jié)果。Go 中是否有用于在某個(gè)文件中搜索字符串的功能?如果不是,是否有其他方法可以解決此問(wèn)題?這是我的代碼:package mainimport (    "bufio"    "fmt"    "io/ioutil"    "os"    "strings")func main() {    reader := bufio.NewReader(os.Stdin)    fmt.Print("Enter text: ")    text, _ := reader.ReadString('\n')    // read the whole file at once    b, err := ioutil.ReadFile("input.txt")    if err != nil {        panic(err)    }    s := string(b)    length := len(s)    //check whether s contains substring text    fmt.Println(strings.Contains(s, text))}
查看完整描述

2 回答

?
互換的青春

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊

如果我正確閱讀了您的問(wèn)題,您想從文件中讀取并確定在命令行中輸入的字符串是否在該文件中......而且我認(rèn)為您看到的問(wèn)題與字符串分隔符有關(guān),reader.ReadString('\n')位,而不是string.Contains()。


在我看來(lái),制作你想要的東西會(huì)更容易一些fmt.Scanln;它會(huì)簡(jiǎn)化事情并返回一個(gè)我很確定是你想要的結(jié)果。試試你的代碼的這個(gè)變體:


package main


import (

    "fmt"

    "io/ioutil"

    "strings"

)


func main() {

    var text string

    fmt.Print("Enter text: ")

    // get the sub string to search from the user

    fmt.Scanln(&text)


    // read the whole file at once

    b, err := ioutil.ReadFile("input.txt")

    if err != nil {

        panic(err)

    }

    s := string(b)

    // //check whether s contains substring text

    fmt.Println(strings.Contains(s, text))

}


查看完整回答
反對(duì) 回復(fù) 2022-01-10
?
蝴蝶不菲

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超4個(gè)贊

我只是添加一個(gè)標(biāo)志來(lái)使用命令行參數(shù)。如果什么都沒(méi)通過(guò),它會(huì)提示你:)。


package main


import (

    "flag"

    "fmt"

    "io/ioutil"

    "strings"

)


//Usage go run filename -text=dataYouAreLookingfor

//if looking for Nissan in file the command will be

// go run filename -text=Nissan


func main() {

    var text string

    // use it as cmdline argument

    textArg := flag.String("text", "", "Text to search for")

    flag.Parse()

    // if cmdline arg was not passed ask

    if fmt.Sprintf("%s", *textArg) == "" {

        fmt.Print("Enter text: ")

        // get the sub string to search from the user

        fmt.Scanln(&text)

    } else {

        text = fmt.Sprintf("%s", *textArg)

    }

    // read the whole file at once

    b, err := ioutil.ReadFile("input.txt")

    if err != nil {

        panic(err)

    }

    s := string(b)

    // //check whether s contains substring text

    fmt.Println(strings.Contains(s, text))

}


查看完整回答
反對(duì) 回復(fù) 2022-01-10
  • 2 回答
  • 0 關(guān)注
  • 241 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)