Baris tepat dalam fail regex Golang

WBOY
Lepaskan: 2024-02-08 21:06:30
ke hadapan
950 orang telah melayarinya

Baris tepat dalam fail regex Golang

Golang ialah bahasa pengaturcaraan yang berkuasa dengan fungsi ekspresi biasa terbina dalam menyediakan kemudahan untuk memproses fail teks. Dalam Golang, ungkapan biasa boleh digunakan untuk memadankan dan mengekstrak baris tertentu dalam fail. Artikel oleh editor PHP Xiaoxin ini memperkenalkan pembaca kepada cara menggunakan fungsi ekspresi biasa Golang untuk memadankan baris dengan tepat dalam fail dan memberikan contoh kod sebenar. Dengan mempelajari artikel ini, pembaca akan dapat memahami dengan lebih baik dan menggunakan fungsi ungkapan biasa dalam Golang, serta meningkatkan kecekapan dan ketepatan pemprosesan fail.

Kandungan soalan

Saya mempunyai fail dengan kandungan berikut

# requires authentication with auth-user-pass
auth-user-pass
#auth-user-pass
# auth-user-pass
auth-user-passwd
Salin selepas log masuk

Adakah terdapat cara untuk menjadikan regex hanya sepadan dengan baris kedua dengan golang?

Saya cuba menggunakan kod berikut tetapi ia mengembalikan kepingan kosong

package main

import (
    "fmt"
    "os"
    "regexp"
)

func main() {
    bytes, err := os.readfile("file.txt")
    if err != nil {
        panic(err)
    }

    re, _ := regexp.compile(`^auth-user-pass$`)
    matches := re.findallstring(string(bytes), -1)
    fmt.println(matches)
}
Salin selepas log masuk
$ go run main.go
[]
Salin selepas log masuk


Jawapan betul


Rentetan anda mengandungi berbilang baris, jadi anda harus menghidupkan mod berbilang baris (menggunakan bendera m):

Berikut ialah contoh mudah:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    var str = `# Requires authentication with auth-user-pass
auth-user-pass
#auth-user-pass
# auth-user-pass
auth-user-passwd`

    re, _ := regexp.Compile(`(?m)^auth-user-pass$`)
    matches := re.FindAllString(str, -1)
    fmt.Println(matches)
}
Salin selepas log masuk

Anda boleh mencuba coretan kod ini di: https://www.php.cn/link/f4f4a06c589ea53edf4a9b18e70bbd40.

Atas ialah kandungan terperinci Baris tepat dalam fail regex Golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:stackoverflow.com
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!