ホームページ バックエンド開発 Golang golangでカットする方法(3つの方法)

golangでカットする方法(3つの方法)

Apr 03, 2023 pm 02:09 PM

Go 言語は現代的で効率的なプログラミング言語であり、多くの開発者は仕事中に文字列をカットする必要がある状況によく遭遇します。この記事ではGolangで文字列を区切る方法を紹介します。

最初のメソッド: strings.Split()

組み込みの strings パッケージを使用して文字列を分割できます。このパッケージには、2 つのパラメータを受け取る Split() 関数が用意されています。最初のパラメータは分離する文字列で、2 番目のパラメータは指定された区切り文字です。戻り値はスライスであり、スライス内の要素は区切り文字で区切られています。

サンプルコード:

package main

import (
    "fmt"
    "strings"
)

func main() {
    str := "a,b,c,d,e"
    arr := strings.Split(str, ",")
    fmt.Println(arr)
}
ログイン後にコピー

出力結果:

[a b c d e]
ログイン後にコピー

2番目のメソッド: regexp package

複雑なパターンに基づいて文字列を区切る必要がある場合は、正規表現を使用します。に使える。 Go 言語の regexp パッケージは、正規表現関連の関数を提供します。

サンプル コード:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    str := "foo&%$bar##baz"
    re := regexp.MustCompile(`[&%$#]+`)
    arr := re.Split(str, -1)
    fmt.Println(arr)
}
ログイン後にコピー

出力結果:

[foo bar baz]
ログイン後にコピー

上記のコードでは、正規表現に基づいて文字列を分割するために Split() 関数が使用されています。

3 番目のメソッド: strings.Fields()

strings.Fields() 関数は、文字列をスペースでスライスに分割できます。文字列に複数の連続したスペースが含まれている場合は、カウントのみが行われます。一つの空間として。

サンプルコード:

package main

import (
    "fmt"
    "strings"
)

func main() {
    str := "This is a string   with extra spaces"
    arr := strings.Fields(str)
    fmt.Println(arr)
}
ログイン後にコピー

出力結果:

[This is a string with extra spaces]
ログイン後にコピー

概要

上記の3つの方法により、Golang Separate操作で簡単に文字列変換を行うことができます。実際の開発では、状況に応じて適切な方法を選択することで、効率的かつ簡潔なコード実装を実現できます。

以上がgolangでカットする方法(3つの方法)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Go Language Packのインポート:アンダースコアとアンダースコアなしの違いは何ですか? Go Language Packのインポート:アンダースコアとアンダースコアなしの違いは何ですか? Mar 03, 2025 pm 05:17 PM

Go Language Packのインポート:アンダースコアとアンダースコアなしの違いは何ですか?

Beegoフレームワークのページ間で短期情報転送を実装する方法は? Beegoフレームワークのページ間で短期情報転送を実装する方法は? Mar 03, 2025 pm 05:22 PM

Beegoフレームワークのページ間で短期情報転送を実装する方法は?

GOでテスト用のモックオブジェクトとスタブを書くにはどうすればよいですか? GOでテスト用のモックオブジェクトとスタブを書くにはどうすればよいですか? Mar 10, 2025 pm 05:38 PM

GOでテスト用のモックオブジェクトとスタブを書くにはどうすればよいですか?

トレースツールを使用して、GOアプリケーションの実行フローを理解するにはどうすればよいですか? トレースツールを使用して、GOアプリケーションの実行フローを理解するにはどうすればよいですか? Mar 10, 2025 pm 05:36 PM

トレースツールを使用して、GOアプリケーションの実行フローを理解するにはどうすればよいですか?

MySQLクエリ結果リストをGO言語のカスタム構造スライスに変換する方法は? MySQLクエリ結果リストをGO言語のカスタム構造スライスに変換する方法は? Mar 03, 2025 pm 05:18 PM

MySQLクエリ結果リストをGO言語のカスタム構造スライスに変換する方法は?

GOのジェネリックのカスタムタイプ制約を定義するにはどうすればよいですか? GOのジェネリックのカスタムタイプ制約を定義するにはどうすればよいですか? Mar 10, 2025 pm 03:20 PM

GOのジェネリックのカスタムタイプ制約を定義するにはどうすればよいですか?

Go言語でファイルを便利に書く方法は? Go言語でファイルを便利に書く方法は? Mar 03, 2025 pm 05:15 PM

Go言語でファイルを便利に書く方法は?

GOの実際のパフォーマンスを正確に反映するベンチマークを作成するにはどうすればよいですか? GOの実際のパフォーマンスを正確に反映するベンチマークを作成するにはどうすればよいですか? Mar 10, 2025 pm 05:36 PM

GOの実際のパフォーマンスを正確に反映するベンチマークを作成するにはどうすればよいですか?

See all articles