gostrutils
Collections of string utils I have created over the years (by ik5)
uniseg
Unicode Text Segmentation, Word Wrapping, and String Width Calculation in Go (by rivo)
gostrutils | uniseg | |
---|---|---|
- | 6 | |
44 | 539 | |
- | - | |
2.2 | 6.5 | |
about 1 year ago | 22 days ago | |
Go | Go | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
gostrutils
Posts with mentions or reviews of gostrutils.
We have used some of these posts to build our list of alternatives
and similar projects.
We haven't tracked posts mentioning gostrutils yet.
Tracking mentions began in Dec 2020.
uniseg
Posts with mentions or reviews of uniseg.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-06-16.
- Should unicode/utf8 have funcs for graphemes?
-
UTF-8 strings with Go: len(s) isn't enough
So far, I've found this package for Unicode text segmentation: https://github.com/rivo/uniseg
-
Why do we get byte and rube when iterating a string using for loop or for range respectivly?
Ah this is an intreresting one. I’ve recently had to deal with graphemes and after learning a bit more about them with a coworker, was surprised to find there doesn’t seem to be native support for them in Golang. Does anyone know if support for dealing with graphemes will be added eventually? For the moment I’ve used https://github.com/rivo/uniseg
-
FYI: a single Go rune is not the same as a single visible character
Yes, what you want is called a grapheme cluster. It faithfully represents one "visible" character in your terminal. Use something like https://github.com/rivo/uniseg to turn a string into graphemes and iterate over them.
-
Strings in Go
There is an open source library github.com/rivo/uniseg that provides a function to do just this. It provides a function GraphemeClusterCount that returns the number of characters that is present in this string. Check out the source code on Github for details about the author and the implementation.
What are some alternatives?
When comparing gostrutils and uniseg you can also consider the following projects:
util - A collection of useful utility functions
go - The Go programming language
go-edlib - 📚 String comparison and edit distance algorithms library, featuring : Levenshtein, LCS, Hamming, Damerau levenshtein (OSA and Adjacent transpositions algorithms), Jaro-Winkler, Cosine, etc...
ecoji - Encodes (and decodes) data as emojis
xid - Parse unicode identifiers