ホームページ > バックエンド開発 > Golang > Golangで文字置換操作を実行するにはどうすればよいですか?手法の紹介

Golangで文字置換操作を実行するにはどうすればよいですか?手法の紹介

PHPz
リリース: 2023-04-11 11:36:20
オリジナル
2160 人が閲覧しました

この記事では、Golang での文字置換操作を紹介します。

Golang では、文字列は不変 (不変) 型です。つまり、文字列は一度作成されると変更できません。ただし、通常は、文字列内の特定の文字を他の文字に置き換えるなど、文字列に対して置換操作を実行する必要があります。では、Golang で文字置換操作を実行するにはどうすればよいでしょうか?

方法 1: strings.Replace() 関数

Golang には、文字列内の特定の文字を置換するために使用できる組み込み関数 strings.Replace() が用意されています。この関数の使用方法は以下のとおりです。

func Replace(s, old, new string, n int) string
ログイン後にコピー

このうち、sは置換対象の文字列、oldは置換対象の文字列、newは置換対象の文字列、nは置換対象の文字列の数を表します。交換時期です。

次は、strings.Replace() 関数を使用した文字置換の例です。

package main

import (
    "fmt"
    "strings"
)

func main() {
    s := "hello, world"
    r := strings.Replace(s, ",", "!", 1)
    fmt.Println(r)
}
ログイン後にコピー

上記のコードでは、s の最初のコンマを感嘆符に置き換えます。実行結果は次のとおりです。

hello! world
ログイン後にコピー
ログイン後にコピー

strings.Replace() 関数は新しい文字列を返し、元の文字列は変更されないことに注意してください。

方法 2: bytes.Replace() 関数

strings.Replace() 関数に加えて、Golang は、) レベルに使用できる bytes.Replace() 関数も提供します。交換。この関数の使用法は strings.Replace() 関数と似ていますが、文字列処理中に操作のためにバイト スライスに変換される点が異なります。

次に、bytes.Replace() 関数を使用した文字置換の例を示します。

package main

import (
    "bytes"
    "fmt"
)

func main() {
    s := "hello, world"
    b := []byte(s)
    r := bytes.Replace(b, []byte(","), []byte("!"), 1)
    fmt.Println(string(r))
}
ログイン後にコピー

上記のコードでは、まず文字列をバイト スライス b に変換し、次にバイトを使用します。 Replace() 関数は置換操作を実行し、最終的に置換されたバイト スライスを文字列に変換します。実行結果は次のとおりです。

hello! world
ログイン後にコピー
ログイン後にコピー

strings.Replace() 関数と同様に、bytes.Replace() 関数も新しいバイト スライスを返し、元のバイト スライスは変更されません。

要約すると、strings.Replace() 関数と bytes.Replace() 関数を使用すると、文字列内の特定の文字を簡単に置き換えることができます。実際のプログラミングでは、特定の状況に応じて適切な関数を選択して動作させることができます。

以上がGolangで文字置換操作を実行するにはどうすればよいですか?手法の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート