Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Melakukan Ungkapan Biasa Tidak Peka Huruf dalam Go?

Bagaimana untuk Melakukan Ungkapan Biasa Tidak Peka Huruf dalam Go?

Linda Hamilton
Linda Hamiltonasal
2024-12-12 10:30:08660semak imbas

How to Perform Case-Insensitive Regular Expressions in Go?

Melaksanakan Ungkapan Biasa Tidak Peka Huruf dalam Go

Apabila membina ungkapan biasa secara dinamik daripada input pengguna, menjadikannya tidak peka huruf besar-besaran ialah keperluan biasa. Keperluan timbul apabila rentetan input mungkin mengandungi kedua-dua aksara besar dan huruf kecil, tetapi padanan harus menganggapnya setara.

Pendekatan mudah ialah mengendalikan kedua-dua kes secara manual dalam ungkapan biasa, seperti yang dilihat dalam contoh ini:

reg, err := regexp.Compile(`[a-zA-Z]`)

Walau bagaimanapun, jika ungkapan biasa dibina daripada rentetan, penyelesaian yang lebih elegan tersedia.

Untuk mencipta ungkapan biasa tidak peka huruf besar-kecil, tambahkan (?i) pada permulaan ungkapan:

reg, err := regexp.Compile("(?i)" + strings.Replace(s.Name, " ", "[ \._-]", -1))

Bendera ini menyebabkan enjin ungkapan biasa mengabaikan pembezaan huruf besar-kecil, menjadikan padanan tidak sensitif huruf besar-besaran.

Untuk mendapatkan maklumat lanjut tentang bendera ungkapan biasa, rujuk dokumentasi pakej regexp/sintaks di bawah istilah "bendera".

Atas ialah kandungan terperinci Bagaimana untuk Melakukan Ungkapan Biasa Tidak Peka Huruf 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