>백엔드 개발 >Golang >스트리밍 정규식 스캐너 — regexpscanner

스트리밍 정규식 스캐너 — regexpscanner

Patricia Arquette
Patricia Arquette원래의
2024-12-06 16:10:16722검색

Streaming regex scanner — regexpscanner

Go의 regexp 모듈은 스트림 처리가 부족합니다. 거의 모든 메서드에 문자열이나 []바이트가 필요합니다. regexpscanner 모듈을 사용하면 정규식 패턴과 일치하는 토큰을 쉽게 추출할 수 있습니다.

https://pkg.go.dev/github.com/tonymet/regexpscanner

모듈 설치

go get github.com/tonymet/regexpscanner@latest

사용 예

간단한 콜백 기반 스트림 토크나이저가 필요한 경우 ProcessToken을 사용하세요.
ProcessTokens는 Scanner에서 일치하는 각 토큰에 대해 핸들러(문자열)를 호출합니다.

package main

import (
    "fmt"
    "regexp"
    "strings"

    rs "github.com/tonymet/regexpscanner"
)

func main() {
    rs.ProcessTokens(
        strings.NewReader("<html><body><p>Welcome to My Website</p></body></html>"),
        regexp.MustCompile(`</?[a-z]+>`),
        func(text string) {
            fmt.Println(text)
        })
}

산출

<html>
<body>
<p>
</p>
</body>
</html>

한 번 시도해 보고 Go 모듈 페이지에서 더 많은 예제를 확인하세요

위 내용은 스트리밍 정규식 스캐너 — regexpscanner의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.