как получить различия значений, которые находятся в одном срезе? - PullRequest
0 голосов
/ 26 марта 2019

Вместо среза, я должен извлечь слова из файла, и мне нужно только выводить слова, при этом буквы состоят из бегущих букв, таких как feed, и bcd

Итак, я придумал эту функцию, в которой r [] rune является представителем int алфавитов, а строка - словами из файла. Эта функция предположительно минус значение в позиции k и значение в позиции m, и если на выходе будет 0 или 1, она вернет значение bool. Но я не могу получить это, если l [k] -l [m] = 0 | l [k] -l [m] = 1 {на работу

func differenceofint(r []rune, line string) bool{
        for i, j := range r{
        k := int(i) //position
        l := int(j) //the int representative
        m:=int (i+1)
        fmt.Println(k, l,m)
        if l[k]-l[m]=0 | l[k]-l[m]=1{
           return true
        }
    }
return false
}

1 Ответ

0 голосов
/ 27 марта 2019

Не уверен, что я точно понял, чего хочу (bdc, кажется, не бегущее слово), но здесь идет моя интерпретация:

package main

import (
  "fmt"
  "strings"
)

func running(word string) bool {

    evaluator := int(word[0])

    for _, v := range word {
        if int(v) != evaluator-1 && int(v) != evaluator+1 && int(v) != evaluator {
            return false
        }
        evaluator = int(v)
    }
    return true
}

func runningWords(line string) (result []string) {
    words := strings.Split(line, " ")
    for _, aword := range words {
        if running(aword) {
            result = append(result, aword)
        }
    }
    return
}

func main() {
    fmt.Println(runningWords("algo atum feed bcd abcdef"))
}

и ссылка на игровую площадку https://play.golang.org/p/A44Xed6Naa6

Примечания о вашем коде:

  1. или ||

  2. Я думаю, вы хотите получить доступ к руне линии. l - целое число, поэтому l [k] или l [m] не будут компилироваться. я думаю, что вы хотели г [к] или л [м]

  3. если это длинный текст, вам необходимо рассмотреть новые строки, специальные символы, знаки пунктуации и ряд других вопросов.

Удачи

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...