Mengapa Padanan Go Regex Saya Gagal, Tetapi Python Berjaya?

Susan Sarandon
Lepaskan: 2024-11-26 03:18:10
asal
190 orang telah melayarinya

Why Does My Go Regex Match Fail, But Python's Succeeds?

Kegagalan Padanan Regex dalam Go

Seorang pengguna menghadapi masalah apabila corak ungkapan biasa gagal dipadankan dalam Go. Coretan kod cuba untuk mengesahkan rentetan bentuk "parameter=0xFF", mengikut corak regex "^. =b0xA-Fb$". Walau bagaimanapun, fungsi MatchString() mengembalikan ralat palsu dan sifar, tidak seperti dalam Python di mana perlawanan berjaya.

Menyahpepijat Kod Go

Untuk menyelesaikan isu, pengguna harus mempertimbangkan untuk menggunakan rentetan mentah literal sebagai rentetan corak. Dalam Go, literal rentetan mentah disertakan dalam tanda belakang '`' dan bukannya tanda petikan standard '"'. Konvensyen ini menghalang aksara melarikan diri '' daripada ditafsirkan dalam rentetan.

Kod Go Dibetulkan

Kod Go yang diperbetulkan menggunakan literal rentetan mentah ialah:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    var a string = "parameter=0xFF"
    var regex string = `^.+=\b0x[A-F][A-F]\b$`
    result, err := regexp.MatchString(regex, a)
    fmt.Println(result, err)
}
Salin selepas log masuk

Output Jangkaan

Selepas menggunakan literal rentetan mentah, output yang dijangkakan ialah:

true <nil>
Salin selepas log masuk

Ini menunjukkan bahawa rentetan input sepadan dengan format yang diingini, seperti yang dimaksudkan.

Atas ialah kandungan terperinci Mengapa Padanan Go Regex Saya Gagal, Tetapi Python Berjaya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan