Mengendalikan Pembezaan Rentetan dalam Go
Apabila berurusan dengan output rentetan yang dijana oleh arahan Linux dalam Go, membezakan antara aksara "n" terbenam dan pemisah baris sebenar boleh mencabar, berpotensi membawa kepada penghuraian rentetan yang salah.
Dalam senario yang diterangkan, matlamatnya ialah untuk membezakan antara aksara "n" yang terdapat dalam rentetan berbilang baris (mewakili rentetan petikan) dan pemisah baris sebenar yang memisahkan baris hasil yang berbeza.
Untuk menangani isu ini, pertimbangkan perkara berikut teknik:
output := strings.Replace(sourceStr, `\n`, "\n", -1)
Kod ini menggantikan semua contoh aksara "n" yang terlepas (iaitu, n) dengan pemisah baris sebenar "n."
Rentetan literal di dalam tanda belakang () dalam Go membolehkan rentetan berbilang baris. Walau bagaimanapun, apabila memproses rentetan ini dalam kod, pemisah baris terlepas dengan n`. Dengan menggantikan pemisah baris yang terlepas ini dengan pemisah baris sebenar, anda boleh membezakan antara aksara "n" yang dibenamkan dan pemisah baris sebenar.
Pendekatan ini memastikan teknik penghuraian rentetan yang berikutnya, seperti rentetan.Split atau bufio.NewScanner, akan berkelakuan dengan betul, memecahkan rentetan berbilang baris kepada baris individu berdasarkan pemisah baris sebenar dan bukannya "n" terbenam watak.
Atas ialah kandungan terperinci Bagaimana untuk Membezakan `\\n` Terbenam daripada Pemisah Baris Sebenar dalam Output Go String?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!