ホームページ  >  記事  >  バックエンド開発  >  Go 文字列内の特殊文字を検出するには?

Go 文字列内の特殊文字を検出するには?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-02 00:27:02836ブラウズ

How to Detect Special Characters in Go Strings?

GoLang の文字列内の特殊文字の識別

GoLang では、文字列を処理する際に、特定の文字または部分文字列が次の条件を満たすかどうかを判断する必要が頻繁に発生します。特別な文字。これは、データ検証、入力のサニタイズ、その他のさまざまなプログラミング要件にとって非常に重要です。このタスクに対するさまざまなアプローチを検討してみましょう。

strings.ContainsAny の使用

strings.ContainsAny 関数は、指定された文字列にいずれかの文字が含まれているかどうかを確認する効率的な方法を提供します。提供された部分文字列で指定されます。たとえば、文字列に特殊文字「|」が含まれているかどうかを確認するには、または ",":

<code class="go">package main

import "fmt"
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>

Using strings.IndexFunc

あるいは、文字列に ASCII 範囲外の文字が含まれているかどうかを確認することが目的の場合 (つまり、特殊文字)の場合は、string.IndexFunc 関数を利用できます。この関数を使用すると、文字列内の各ルーンをテストするカスタム関数の定義が可能になります:

<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")
    }
    if strings.IndexFunc("Hello World", f) != -1 {
        fmt.Println("Found special char")
    }
}</code>

以上がGo 文字列内の特殊文字を検出するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。