Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Membaca Rentetan yang Dipisahkan Ruang daripada Input Pengguna dalam Go?

Bagaimana untuk Membaca Rentetan yang Dipisahkan Ruang daripada Input Pengguna dalam Go?

Susan Sarandon
Susan Sarandonasal
2024-11-04 07:48:01605semak imbas

How to Read Space-Separated Strings from User Input in Go?

Menghuraikan Rentetan Dipisahkan Oleh Ruang Menggunakan fmt.Scanln

Apabila cuba membaca rentetan daripada input pengguna yang mengandungi berbilang perkataan yang dipisahkan oleh ruang, fmt.Scanln boleh mengembalikan perkataan pertama sahaja. Untuk menangani isu ini:

Memahami fmt.Scanln

fmt.Scanln beroperasi sama seperti fmt.Scan, tetapi menamatkan pengimbasan apabila menemui aksara baris baharu. Watak baris baharu mesti mengikut item terakhir atau mesti ada penunjuk EOF (End-of-File).

Menggunakan Scanln untuk Membaca Rentetan Dipisahkan Ruang

Untuk berjaya membaca rentetan yang dipisahkan ruang, nyatakan berbilang pembolehubah dalam fmt. Panggilan imbasan:

<code class="go">var s1 string
var s2 string
fmt.Scanln(&s1, &s2)</code>

Pendekatan ini memberikan perkataan pertama kepada s1 dan yang kedua kepada s2.

Alternatif Pendekatan Menggunakan bufio.Scanner

Pilihan lain ialah menggunakan bufio.Scanner:

<code class="go">scanner := bufio.NewScanner(os.Stdin)
for scanner.Scan() {
    s := scanner.Text()
    fmt.Println(s)
}</code>

Di sini, pengimbas menggelung melalui input standard dan mencetak setiap baris input.

Atas ialah kandungan terperinci Bagaimana untuk Membaca Rentetan yang Dipisahkan Ruang daripada Input Pengguna dalam 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