The Principal Dev – Masterclass for Tech Leads

The Principal Dev – Masterclass for Tech LeadsNov 27-28

Join

Pomsky logo

Pomsky

A portable1, modern regular expression language

Website Docs Playground VS Code plugin Discord Crates.io

Get Started

To begin, check out the website.

What's New

Read the blog or the changelog to learn about new features.

Installation

You can install Pomsky by...

See the releases page for instructions.

Build from source

Ensure you have a recent Rust toolchain installed. Instructions for how to install Rust can be found here. Then run

cargo install pomsky-bin

Compatibility and portability

Pomsky is currently compatible with PCRE, JavaScript, Java, .NET, Python, Ruby, Rust, and RE2. The regex flavor must be specified during compilation, so Pomsky can ensure that the produced regex works as desired on the targeted regex engine.

Note: You should enable Unicode support in your regex engine, if it isn't enabled by default. This is explained here.

There are a few situations where Pomsky expressions are not portable, explained here.

Security

Never compile or execute an untrusted Pomsky expression on your critical infrastructure. This may make you vulnerable for denial of service attacks, like the Billion Laughs attack.

Read more

Diagnostics

Pomsky looks for mistakes and displays helpful diagnostics:

Comparison with other projects

I wrote an in-depth comparison with similar projects, which you can find here.

Code of Conduct

The Code of Conduct can be found here.

Contributing

You can contribute by using Pomsky and providing feedback. If you find a bug or have a question, please create an issue.

I also gladly accept code contributions. More information

Go to my sponsors page

License

Dual-licensed under the MIT license or the Apache 2.0 license.

Join libs.tech

...and unlock some superpowers

GitHub

We won't share your data with anyone else.