go-zero-width alternatives and similar packages
Based on the "Specific Formats" category.
Alternatively, view go-zero-width alternatives based on common mentions on social networks and blogs.
-
bluemonday
bluemonday: a fast golang HTML sanitizer (inspired by the OWASP Java HTML Sanitizer) to scrub user generated content of XSS -
mxj
Decode / encode XML to/from map[string]interface{} (or JSON); extract values with dot-notation paths and wildcards. Replaces x2j and j2x packages. -
html-to-markdown
⚙️ Convert HTML to Markdown. Even works with entire websites and can be extended through rules. -
omniparser
omniparser: a native Golang ETL streaming parser and transform library for CSV, JSON, XML, EDI, text, etc. -
go-pkg-rss
This package reads RSS and Atom feeds and provides a caching mechanism that adheres to the feed specs. -
goq
A declarative struct-tag-based HTML unmarshaling or scraping package for Go built on top of the goquery library -
github_flavored_markdown
GitHub Flavored Markdown renderer with fenced code block highlighting, clickable header anchor links. -
go-pkg-xmlx
Extension to the standard Go XML package. Maintains a node tree that allows forward/backwards browsing and exposes some simple single/multi-node search functions. -
pagser
Pagser is a simple, extensible, configurable parse and deserialize html page to struct based on goquery and struct tags for golang crawler -
csvplus
csvplus extends the standard Go encoding/csv package with fluent interface, lazy stream operations, indices and joins.
WorkOS - The modern identity platform for B2B SaaS
Do you think we are missing an alternative of go-zero-width or a related project?
Popular Comparisons
README
go-zero-width
Zero-width character detection and removal for Go. Inspired by this Medium article.
Installation
go get github.com/trubitsyn/go-zero-width
Usage
package main
import ( "github.com/trubitsyn/go-zero-width" "fmt" )
func main() { login := "abcdef" // zero-width space between "c" and "d" clean := zerowidth.RemoveZeroWidthCharacters(login) // a b c d e f fmt.Printf("% x\n", login) // 61 62 63 e2 80 8b 64 65 66 fmt.Printf("% x\n", clean) // 61 62 63 64 65 66 }
Supported characters
- Zero-width space (U+200B)
- Zero-width no-break space (U+FEFF)
- Zero-width joiner (U+200D)
- Zero-width non-joiner (U+200C)
Testing
go get -t github.com/trubitsyn/go-zero-width
go test github.com/trubitsyn/go-zero-width
LICENSE
Copyright 2018 Nikola Trubitsyn
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*Note that all licence references and agreements mentioned in the go-zero-width README section above
are relevant to that project's source code only.