Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Memotong Rentetan dalam Templat Go?

Bagaimana untuk Memotong Rentetan dalam Templat Go?

Patricia Arquette
Patricia Arquetteasal
2024-11-10 09:24:02448semak imbas

How to Truncate Strings in Go Templates?

Memotong Rentetan dalam Templat Go

Apabila bekerja dengan templat HTML dalam Go, anda mungkin menghadapi situasi di mana anda perlu mengehadkan panjang rentetan. Ini boleh berguna untuk menghalang limpahan teks atau memastikan paparan yang konsisten.

Dalam contoh yang diberikan, anda mempunyai templat yang memaparkan kandungan ".Kandungan" dalam gelung julat. Secara lalai, ia akan mencetak keseluruhan rentetan. Walau bagaimanapun, anda ingin memotongnya kepada maksimum 25 aksara.

Penyelesaian terletak pada penggunaan printf dalam templat anda. Fungsi ini membolehkan anda memanipulasi rentetan dalam pelbagai cara, termasuk pemotongan.

Menggunakan printf

Untuk memotong rentetan dalam templat anda, anda boleh menggunakan arahan printf dengan rentetan format yang menentukan panjang yang dikehendaki. Contohnya:

{{ printf "%.25s" .Content }}

Rentetan format ini memberitahu printf untuk memformat ".Kandungan" sebagai rentetan dan mengehadkan panjangnya kepada 25 aksara. Sebarang lebihan kandungan melebihi 25 aksara pertama akan dibuang.

Pemangkasan Dinamik

Anda juga boleh menentukan panjang pemangkasan secara dinamik dengan menghantar nombor yang diingini sebagai hujah tambahan kepada printf:

{{ printf "%.*s" 25 .Content }}

Dalam kes ini, hujah pertama (25) mewakili panjang maksimum untuk dipotong. Argumen kedua (".Kandungan") ialah rentetan yang akan dipotong.

Nota tentang Ketepatan

Perlu ambil perhatian bahawa printf menggunakan rune (titik kod Unicode) untuk mengukur lebar dan ketepatan, bukannya bait. Ini bermakna aksara UTF-8 berbilang bait mungkin dipotong di tengah. Jika anda memerlukan pemangkasan berasaskan bait, pertimbangkan untuk menggunakan pendekatan alternatif seperti penghirisan subrentetan.

Atas ialah kandungan terperinci Bagaimana untuk Memotong Rentetan dalam Templat Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn