golang では、文字列は不変です。つまり、文字列が作成されると、元の文字列を変更することはできず、新しい文字列を作成することによってのみ変更できます。
文字列内の特定の文字を置換したい場合は、通常 2 つの方法があります:
サンプル コードは次のとおりです。
import "strings" func main() { str := "hello world" newStr := strings.ReplaceAll(str, "l", "x") fmt.Println(newStr) // 输出 hexxo worxd }
上記のコードでは、strings パッケージを導入することにより、ReplaceAll() 関数が直接呼び出され、文字の置換が完了します。 ReplaceAll() 関数は、文字列内の一致するすべての項目を指定された文字列に置き換えます。
サンプル コードは次のとおりです。
func main() { str := "hello world" chars := []rune(str) for i := range chars { if chars[i] == 'l' { chars[i] = 'x' } } newStr := string(chars) fmt.Println(newStr) // 输出 hexxo worxd }
上記のコードでは、まず文字列オブジェクトがルーン配列に変換されます。 、ルーンは Unicode 文字を表し、ルーン配列はメモリ内の文字列の表現です。次に、ルーン配列を走査し、文字が 'l' に等しいかどうかを判断して置換し、最後に、ルーン配列を文字列に戻します。
全体として、2 番目の方法はより柔軟であり、for ループを使用して文字列内の各文字を走査し、特定の文字のみを置換するなど、より詳細な操作を実行できます。最初の方法では、置換ロジックを関数に抽象化します。これは、よりシンプルで使いやすいものです。実際のニーズに基づいてさまざまな方法を選択してください。
以上がgolang 文字を置換するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。