go-parse- Parsec 解析库
Google Go 常用工具包
访问GitHub主页
共0Star
详细介绍
go-parse 是一个 Go 语言的库实现类 Parsec 的解析。
示例代码:
func main() {
in := new(StringVessel);
in.SetInput(`< (>)(
<
)( >) < >
>
>`);
ltgt := Any(Symbol("<"), Symbol(">"));
parser := Many(Any(ltgt, Parens(ltgt)));
out, parsed := parser(in);
fmt.Printf("Matched: %#v\n", parsed);
fmt.Printf("Matches: %v\n", out);
fmt.Printf("Vessel: %+v\n", in);
}
输出:
go-parse $ go parsec
Matched: true
Matches: [< > < > < > > >]
Vessel: &{state:<nil> input:< (>)(
<
)( >) < >
>
> position:{Name: Line:0 Column:0 Offset:29}}
推荐源码
-
11 Star
-
185 Star
-
129 Star
-
9037 Star
-
0 Star
-
1016 Star
-
0 Star
-
0 Star
-
0 Star