Cara menggunakan ungkapan biasa dalam golang untuk mengesahkan sama ada input ialah kod negara ISO 3166-1 Alpha-3 yang sah

WBOY
Lepaskan: 2023-06-24 08:21:34
asal
1600 orang telah melayarinya

Golang ialah bahasa pengaturcaraan yang cekap dan ditaip kuat yang turut menyediakan fungsi ekspresi biasa yang berkuasa dalam proses pemprosesan rentetan. Dalam pembangunan sebenar, selalunya perlu untuk mengesahkan sama ada input mematuhi spesifikasi atau format tertentu. Artikel ini akan memperkenalkan cara menggunakan ciri ungkapan biasa golang untuk mengesahkan sama ada input ialah kod negara ISO 3166-1 Alpha-3 yang sah (selepas ini dirujuk sebagai kod Alpha-3).

Pertama sekali, kita perlu menjelaskan apa itu kod negara ISO 3166-1 Alpha-3. Ia adalah piawaian antarabangsa yang dibangunkan oleh Pertubuhan Standardisasi Antarabangsa (ISO) dan digunakan untuk mewakili kod setiap negara atau wilayah Ia biasanya terdiri daripada tiga huruf besar. Contohnya, kod Alpha-3 China ialah "CHN" dan kod Alpha-3 Amerika Syarikat ialah "USA". Dalam aplikasi praktikal, input kod Alpha-3 perlu disahkan untuk memastikan integriti dan ketepatan input.

Fungsi ungkapan biasa dalam golang sangat berkuasa Ia menyokong sintaks ungkapan biasa Perl dan menyediakan pakej ungkapan biasa terbina dalam "regexp". Kita boleh menggunakan fungsi dalam pakej ini untuk mencipta objek ungkapan biasa, dan kemudian melaksanakan pemadanan, carian, penggantian dan operasi lain. Di bawah, kami akan menulis ungkapan biasa mengikut spesifikasi standard ISO 3166-1 Alpha-3.

Piawaian ISO 3166-1 Alpha-3 menetapkan bahawa kod Alpha-3 terdiri daripada tiga huruf besar dan setiap huruf mestilah satu daripada A-Z. Oleh itu, kita boleh menggunakan ungkapan biasa "^[A-Z]{3}$" untuk pengesahan. Antaranya, ^ bermaksud memadankan permulaan rentetan, [A-Z] bermaksud memadankan huruf besar, {3} bermaksud memadankan ungkapan biasa sebelumnya sebanyak tiga kali, dan $ bermaksud memadankan hujung rentetan. Seluruh ungkapan biasa bermaksud: padankan rentetan yang terdiri daripada tiga huruf besar.

Seterusnya, kita boleh merangkum ungkapan biasa ini ke dalam fungsi untuk memudahkan panggilannya dalam atur cara:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    code := "CHN"
    if IsAlpha3Code(code) {
        fmt.Println(code, "is a valid Alpha-3 code")
    } else {
        fmt.Println(code, "is not a valid Alpha-3 code")
    }
}

// 验证是否为有效的Alpha-3代码
func IsAlpha3Code(code string) bool {
    pattern := "^[A-Z]{3}$"
    isMatch, _ := regexp.MatchString(pattern, code)
    return isMatch
}
Salin selepas log masuk

Dalam contoh ini, kami mentakrifkan kod pembolehubah rentetan, menggunakan Untuk menyimpan kod Alpha-3 untuk disahkan. Kemudian, kami memanggil fungsi IsAlpha3Code untuk mengesahkan. Fungsi ini menggunakan ungkapan biasa yang kami tulis di atas untuk menentukan sama ada rentetan input memenuhi keperluan. Jika ya, kembalikan benar;

Perlu diambil perhatian bahawa apabila menggunakan fungsi MatchString, nilai pulangan kedua menunjukkan sama ada ralat berlaku semasa proses pemadanan Kami tidak menggunakan nilai ini, jadi kami menggunakan "_" untuk mengabaikannya.

Hasil yang dijalankan ialah:

CHN is a valid Alpha-3 code
Salin selepas log masuk

Kami boleh menguji menggunakan kod Alpha-3 yang berbeza untuk mengesahkan ketepatan fungsi.

Ringkasnya, kita boleh menggunakan fungsi ungkapan biasa golang untuk mengesahkan sama ada kod Alpha-3 yang dimasukkan adalah sah. Contoh ini juga menyediakan idea asas yang boleh digunakan untuk senario lain dalam pembangunan sebenar. Dengan menguasai penggunaan ungkapan biasa, kami boleh memproses rentetan dengan lebih cekap, meningkatkan kecekapan pengaturcaraan dan kebolehbacaan kod.

Atas ialah kandungan terperinci Cara menggunakan ungkapan biasa dalam golang untuk mengesahkan sama ada input ialah kod negara ISO 3166-1 Alpha-3 yang sah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan