亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何從文件中讀取大寫和小寫的單詞?走

如何從文件中讀取大寫和小寫的單詞?走

Go
子衿沉夜 2023-01-03 15:49:29
我的任務是讀取文件,然后掃描“壞詞” ,如果文件中是否包含“壞詞” ,最后輸出“True”或“False” 。我寫了這個函數:func readFile(fileName string, tabooName string) {    dataFile, err := os.Open(fileName)    if err != nil {        log.Fatal(err)    }    defer dataFile.Close()    scanner := bufio.NewScanner(dataFile)    for scanner.Scan() {        scanner.Text()        if strings.Contains(scanner.Text(), strings.ToLower(tabooName)) || strings.Contains(scanner.Text(), strings.ToUpper(tabooName)) {            fmt.Println("True")            break        } else {            fmt.Println("False")            break        }    }    if err := scanner.Err(); err != nil {        log.Fatal(err)    }}但如果“壞詞”是用大寫字母寫的,它就不起作用 例如:Wrong answer in test #2This word belongs to bad wordsPlease find below the output of your program during this failed test.Note that the '>' character indicates the beginning of the input line.---forbidden_words.txtHARSHFalse我怎樣才能正確地做到這一點?更新:我不知道為什么,但是這個函數現在可以工作了……首先,我剛剛在 main 函數中編寫了整個 func,它正在工作,現在有了 func,它也可以工作了。我不知道為什么大聲笑
查看完整描述

1 回答

?
30秒到達戰場

TA貢獻1828條經驗 獲得超6個贊

您可以使用and略有不同:strings.Containsstrings.ToLower

func readFile(fileName string, tabooName string) {

    file, err := os.Open(fileName)

    if err != nil {

        log.Fatal(err)

    }

    defer file.Close()


    tabooNameLowered := strings.ToLower(tabooName)


    scanner := bufio.NewScanner(file)

    for scanner.Scan() {

        loweredLine := strings.ToLower(scanner.Text())

        if strings.Contains(loweredLine, tabooNameLowered) {

            fmt.Println("True")

            return

        }

    }

        

    fmt.Println("False")


    if err := scanner.Err(); err != nil {

        log.Fatal(err)

    }

}


查看完整回答
反對 回復 2023-01-03
  • 1 回答
  • 0 關注
  • 85 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號