Jos*_*hua 13

你可以使用strings.ContainsAny来查看符文是否存在:

package main

import (
  "fmt"
  "strings"
)

func main() {
  fmt.Println(strings.ContainsAny("Hello World", ",|"))
  fmt.Println(strings.ContainsAny("Hello, World", ",|"))
  fmt.Println(strings.ContainsAny("Hello|World", ",|"))
}
Run Code Online (Sandbox Code Playgroud)

或者,如果要检查是否只有ASCII字符,可以使用strings.IndexFunc:

package main

import (
    "fmt"
    "strings"
)

func main() {
    f := func(r rune) bool {
        return r < 'A' || r > 'z'
    }
    if strings.IndexFunc("HelloWorld", f) != -1 {
        fmt.Println("Found special char")
    }
    if strings.IndexFunc("Hello World", f) != -1 {
        fmt.Println("Found special char")
    }
}
Run Code Online (Sandbox Code Playgroud)


Kip*_*ipz -2

我最终做了这样的事情

alphabet := "abcdefghijklmnopqrstuvwxyz"
alphabetSplit := strings.Split(alphabet, "")
inputLetters := strings.Split(input, "")

for index, value := range inputLetters {
        special:=1
        for _, char :=range alphabetSplit{
            if char == value {
                special = 0
                break
            }
        }
Run Code Online (Sandbox Code Playgroud)

它可能有什么问题,因为因为我将它用于特定的东西,所以我必须编辑才能将其发布在这里

  • 仅仅迭代一个字符串就需要做很多额外的工作。 (2认同)