ホームページ >バックエンド開発 >Golang >Go のテキスト テンプレートのカンマ区切りリストの最後の要素を処理するには?

Go のテキスト テンプレートのカンマ区切りリストの最後の要素を処理するには?

DDD
DDDオリジナル
2024-12-06 22:59:12337ブラウズ

How to Handle the Last Element in Go's Text Template Comma-Separated Lists?

Go のテキスト テンプレートの最後の要素の処理

Go のテキスト テンプレートを使用してカンマ区切りリストを生成する場合、最後の要素のカンマの配置

解決策:

この解決策には、反復中に変数を割り当てるテンプレートの機能を利用することが含まれます。 2 番目の変数を反復インデックスに割り当てることで、最後の要素を他の要素と区別できます。次のテンプレートはこれを示しています:

{{ $i := . }}
({{ range $i }}{{ . }}, {{if eq $index (len $. - 1)}}{{/* Empty */}}{{else}},{{end}}{{end}})

このテンプレートでは、変数 $i をテンプレートに渡される値のスライスに初期化します。範囲の反復内で、2 番目の変数 $index を各要素のインデックスに割り当てます。

説明:

  • {{range $i} を使用します。
  • The {{if eq $index (len $. - 1)}} を使用して、スライスを反復処理し、$i を各要素に設定します。式は、現在の $index がスライスの長さから 1 を引いたものに等しいかどうかをチェックします。これは最後の要素に当てはまります。
  • 条件が true の場合、{{/* Empty */}} ディレクティブが実行されます。これは何も行いません (テンプレート内のコメント)。
  • false の場合、コンマ (`,
) を出力します。

以上がGo のテキスト テンプレートのカンマ区切りリストの最後の要素を処理するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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