Oniguruma
Oniguruma: Regular Expression Library for Multiple Languages
A fast and consistent regular expression library supporting multiple programming languages, including Ruby, with strong Unicode support.
What is Oniguruma?
Oniguruma is an open source regular expression library started in 2002 by K.Kosako for use in Ruby. It has since been ported to many other programming languages thanks to its speed, consistency of behavior across languages, and Unicode support.
Some key features of Oniguruma include:
- Very fast matching speeds that can outperform other popular regex engines like PCRE
- Consistency in syntax and behavior when used in different programming languages
- Wide support for Unicode character properties and character classes
- Thread safety and reentrant execution
- Partial match retrieval
- Subexpression calls and recursion
- Custom syntax via Ruby bindings
Originally written in C for high performance, Oniguruma is now available for use in Ruby, PHP, Python, Perl, Java, and more. It continues to be maintained and developed as an open source project. Key applications using Oniguruma for its regular expression needs include Ruby on Rails web frameworks, GitHub's linguist library, and text editors like VSCode and Sublime Text.
For its combination of high speed, Unicode support, consistency, and breadth of language availability, Oniguruma stands out as a versatile regular expressions library well suited for demanding applications needing complex text processing across multiple languages.
Oniguruma Features
Features
- Fast regular expression engine
- Support for many programming languages
- Consistent API across languages
- Full Unicode support
Pricing
- Open Source
Pros
Cons
Official Links
Reviews & Ratings
Login to ReviewThe Best Oniguruma Alternatives
View all Oniguruma alternatives with detailed comparison →
Top Development and Programming Libraries and other similar apps like Oniguruma
Here are some alternatives to Oniguruma:
Suggest an alternative ❐Hyperscan
Nregex
Perl Compatible Regular Expressions