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 중국어 웹사이트의 기타 관련 기사를 참조하세요!