Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk mencari semua padanan rentetan dalam pendakap kerinting menggunakan Go Regex?

Bagaimana untuk mencari semua padanan rentetan dalam pendakap kerinting menggunakan Go Regex?

Linda Hamilton
Lepaskan: 2025-01-05 17:30:40
asal
942 orang telah melayarinya

How to Find All String Matches Within Curly Braces Using Go Regex?

Cari Semua Padanan Rentetan dengan Regex dalam Go

Soalan:

Bagaimana saya boleh mencari dan mengembalikan semua padanan rentetan yang berlaku antara pendakap kerinting dalam rentetan input yang diberikan menggunakan ungkapan biasa dalam Pergi?

Penyelesaian:

Untuk mendapatkan semula semua padanan antara pendakap kerinting, anda boleh menggunakan langkah berikut:

  1. Alih keluar Pembatas Regex: Abaikan garis miring ke hadapan (/) yang biasanya digunakan untuk mengehadkan biasa ungkapan.
  2. Gunakan Literal Rentetan Mentah: Pertimbangkan untuk menggunakan literal rentetan mentah untuk melepaskan aksara meta regex dengan satu garis serong ke belakang.
  3. Kumpulan Tangkapan Pilihan: Jika anda hanya memerlukan kandungan rentetan antara pendakap kerinting, anda boleh menghapuskan tangkapan kumpulan.

Contoh untuk Semua Perlawanan:

r := regexp.MustCompile(`{[^{}]*}`)
matches := r.FindAllString("{city}, {state} {zip}", -1)
Salin selepas log masuk

Contoh untuk Kandungan Dalaman:

r := regexp.MustCompile(`{([^{}]*)}`)
matches := r.FindAllStringSubmatch("{city}, {state} {zip}", -1)
for _, v := range matches {
    fmt.Println(v[1])
}
Salin selepas log masuk

Regex Butiran:

  • {: Watak pembukaan pendakap kerinting literal.
  • ([^{}]*): Kumpulan penangkapan yang sepadan dengan mana-mana jujukan aksara (0 atau lagi) yang bukan pendakap kerinting.
  • }: Watak penutup pendakap kerinting literal.

Atas ialah kandungan terperinci Bagaimana untuk mencari semua padanan rentetan dalam pendakap kerinting menggunakan Go Regex?. 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