The bistring library provides non-destructive versions of common string processing operations like normalization, case folding, and find/replace. Each bistring remembers the original string, and how its substrings map to substrings of the modified version.
- Frequently Asked Questions
- What is a bistring, anyway?
- Why am I getting more text than I expect when slicing?
- What if I don’t know the alignment?
- How do I get the actual indices, rather than just substrings?
- How do I perform case-insensitive operations?
- Forget case insensitivity, how do I make sure that identical looking strings compare equal?
- What about similar-looking strings, that aren’t necessarily identical?
- How do I ensure I get the same results on every machine?