Bagaimana untuk Menormalkan Input Teks ke ASCII Menggunakan Pengendalian Unicode Dipertingkatkan dalam Go?

Patricia Arquette
Lepaskan: 2024-10-24 07:28:29
asal
967 orang telah melayarinya

How to Normalize Text Input to ASCII Using Enhanced Unicode Handling in Go?

Menormalkan Input Teks ke ASCII Menggunakan Pengendalian Unikod Dipertingkat

Menukar aksara bukan ASCII kepada persamaan ASCII adalah keperluan biasa dalam banyak konteks pengaturcaraan . Apabila bekerja dengan input pengguna, anda perlu mengendalikan aksara khas seperti petikan kerinting dengan cara yang konsisten.

Menggunakan Strings.Map untuk Pemetaan Rune

Pustaka standard Go menyediakan fungsi rentetan. Peta untuk menukar rune rentetan (titik kod Unikod) dengan cekap kepada rentetan baharu. Fungsi ini membenarkan kawalan berbutir ke atas penggantian aksara.

Dalam contoh yang disediakan, kod berikut menukar petikan kerinting kepada petikan lurus menggunakan rentetan.Fungsi Peta:

<code class="go">data := "Hello “Frank” or ‹François› as you like to be ‘called’"
cleanedData := strings.Map(normalize, data)</code>
Salin selepas log masuk

Fungsi normalisasi ialah penutupan yang mengendalikan penggantian aksara berdasarkan julat aksara Unikod yang dipratentukan:

<code class="go">func normalize(in rune) rune {
    switch in {
    case '“', '‹', '”', '›':
        return '"'
    case '‘', '’':
        return '\''
    }
    return in
}</code>
Salin selepas log masuk

Output:

Original: Hello “Frank” or ‹François› as you like to be ‘called’
Cleaned: Hello "Frank" or "François" as you like to be 'called'
Salin selepas log masuk

Dengan menggunakan rentetan.Peta, kita boleh menormalkan teks input kepada setara ASCII tanpa bergantung pada penggantian rentetan. Ini menyediakan pendekatan yang serba boleh dan cekap untuk mengendalikan aksara bukan ASCII dalam pelbagai senario pengaturcaraan.

Atas ialah kandungan terperinci Bagaimana untuk Menormalkan Input Teks ke ASCII Menggunakan Pengendalian Unicode Dipertingkatkan dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!