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 サイトの他の関連記事を参照してください。