In GoLang erfordert die Überprüfung auf Sonderzeichen innerhalb einer Zeichenfolge bestimmte Methoden. Wenn Sie auf eine Zeichenfolge stoßen, die aus einer Benutzereingabe stammt, muss zur Sicherstellung ihrer Gültigkeit häufig überprüft werden, dass keine schädlichen oder unerwünschten Zeichen vorhanden sind. In diesem Artikel werden zwei Ansätze zum Erkennen von Sonderzeichen in Zeichenfolgen untersucht.
Die Funktion strings.ContainsAny() ermittelt, ob eine Zeichenfolge ein beliebiges Zeichen aus einer bereitgestellten Zeichenfolge enthält Zeichensatz. Um nach Sonderzeichen zu suchen, übergeben Sie die Zeichenfolge und einen Sonderzeichensatz an die Funktion. Zum Beispiel:
<code class="go">package main import "strings" func main() { fmt.Println(strings.ContainsAny("Hello World", ",|")) // false fmt.Println(strings.ContainsAny("Hello, World", ",|")) // true fmt.Println(strings.ContainsAny("Hello|World", ",|")) // true }</code>
Um zu überprüfen, ob eine Zeichenfolge Nicht-ASCII-Zeichen enthält, erweist sich strings.IndexFunc() als nützlich. Es gibt den Index des ersten Zeichens zurück, das eine bereitgestellte Funktion erfüllt. Übergeben Sie eine Funktion, die prüft, ob das Zeichen außerhalb des ASCII-Zeichenbereichs liegt:
<code class="go">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") // false } if strings.IndexFunc("Hello World", f) != -1 { fmt.Println("Found special char") // true } }</code>
Das obige ist der detaillierte Inhalt vonWie erkennt man Sonderzeichen in Strings in Golang?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!