Text Processing Go Libraries Ranking
Libraries for parsing and manipulating texts.
73 repositories, updated daily.
- GoQuery brings a syntax and a set of features similar to jQuery to the Go language.
- TOML configuration format (encoder/decoder with reflection).
- A Markdown parser written in Go. Easy to extend, standard (CommonMark) compliant, well structured.
- Formatters for time, numbers, and memory size to human readable format.
- Convert HTML to Markdown. Even works with entire websites and can be extended through rules.
- Convert data from SQL databases or document formats like CSV or Excel into formats such as JSON, Excel, CSV, HTML, Markdown, XML, and YAML.
- Go library for encoding structs into URL query parameters.
- Go library for the TOML format with query support and handy cli tools.
- Pretty-print Go structs with Laravel/Symfony-style dumps, full type info, colorized CLI output, cycle detection, and private field access.
- Natural EN and RU language date/time parser with pluggable rules.
- A semantic grep tool using word embeddings to find semantically similar matches. For example, searching for "death" will find "dead", "killing", "murder".
- A collection of common regular expressions for Go.
- An XPath query package for HTML, lets you extract data or evaluate from HTML documents by an XPath expression.
- Functions to get fixed width of the character or string.
- Web scraping Framework to turn websites into structured data.
- Encode / decode XML as JSON or map[string]interface{}; extract values with dot-notation paths and wildcards. Replaces x2j and j2x packages.
- Formats and parses numeric byte values (10K, 2M, 3G, etc.).
- Declarative unmarshalling of HTML using struct tags with jQuery syntax (uses GoQuery).
- Production regex engine with Rust regex-crate architecture: multi-engine DFA/NFA, SIMD prefilters, drop-in stdlib replacement.
- Pretty print any GO variable with ease, an alternative to Go's `fmt.Printf("%#v")`.
- Editorconfig file parser and manipulator for Go.
- Match regex expression named groups into go struct using struct tags and automatic parsing.
- Parse any string, slice or infinite buffer to any tokens.
- iTunes Compliant and RSS 2.0 Podcast Generator in Golang
mmalcek/bafi
- Universal JSON, BSON, YAML, XML translator to ANY format using templates.
- Pagser is a simple, extensible, configurable parse and deserialize html page to struct based on goquery and struct tags for golang crawler.
- DID (Decentralized Identifiers) Parser and Stringer in Go.
- Library for generating random strings from regular expressions.
- Fixed-width text formatting (encoder/decoder with reflection).
- Handles address representation, validation and formatting.
- Count and expand Regular Expressions into all matching Strings.
- A Lexer and Parser for Valves Data Format (known as vdf) written in Go.
sbstjn/allot
- Placeholder and wildcard text parsing for CLI tools and bots.
- Petrovich is the library which inflects Russian names to given grammatical case.
- High performance effective top level domains (eTLD) extraction module.
- Parses indented code (python, pixy, scarlet, etc.) and returns a tree structure.
- Output go structures into multiple formats (YAML/JSON/etc) in your command line app.
- Seamlessly fetch paginated data from any source. Simple and high performance API scraping included.
- fast, auto-fixing Markdown linter and formatter. Checks style, readability, structure, and cross-file integrity.
- Converts bbCode to HTML that allows you to add support for custom bbCode tags.
- string argument parser that understands quotes and backslashes.
Wing924/ltsv
- High performance [LTSV (Labeled Tab Separated Value)](http://ltsv.org/) reader for Go.
- High-performance Unicode character width calculation with SWAR optimization, O(1) lookup tables, and ZWJ emoji support.
- Wraps text at end of lines. Implementation of `textwrap` module from Python.
bobg/htree
- Traverse, navigate, filter, and otherwise process trees of [html.Node](https://pkg.go.dev/golang.org/x/net/html#Node) objects.