ホームページ  >  記事  >  バックエンド開発  >  Go の行から改行文字を効率的に削除するにはどうすればよいですか?

Go の行から改行文字を効率的に削除するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-12 03:37:02874ブラウズ

How to Efficiently Remove Newline Characters from Lines in Go?

行から改行文字を削除する

テキスト ファイルを操作する場合、行末に改行文字 (n) が現れるのが一般的です。これらの文字の削除は、特定の処理タスクで必要になる場合があります。

提供された Go スニペット内:

for {
    read_line, _ := ReadString('\n')
    fmt.Print(read_line)
}

ReadString 関数は、特定の区切り文字 (この場合は改行) に達するまで文字を読み取ります。キャラクター。ただし、改行文字自体は結果に含まれます。

改行文字を削除するには、質問で提案された 1 つのアプローチは、最後の文字を切り取ることでした。

read_line = read_line[:len(read_line)-1]

この方法は機能します。文字列をスライスして最後の文字を除外します。ただし、この方法は行が非常に長い場合、毎回文字列全体をコピーする必要があるため非効率的になる可能性があります。

より効率的な解決策は、文字列ライブラリと TrimSuffix 関数を使用することです。

read_line = strings.TrimSuffix(read_line, "\n")

TrimSuffix は、新しい文字列を作成せずに、文字列の末尾からサフィックス (この場合は改行文字) を削除します。このアプローチはリソースの消費量が少ないため、大きなテキスト ファイルの拡張性が高くなります。

以上がGo の行から改行文字を効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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