redgrep
linkify-it
redgrep | linkify-it | |
---|---|---|
4 | 2 | |
150 | 645 | |
0.7% | 0.9% | |
5.8 | 6.8 | |
2 months ago | 5 months ago | |
C++ | JavaScript | |
Apache License 2.0 | MIT License |
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.
redgrep
-
Show HN: Regex Derivatives (Brzozowski Derivatives)
I don't think Rust regex engine relies on this technique. I guess the main point is when you construct the DFA directly you still have the possibility of the exponential explosion of the number of states. That's why modern engines balance between NFA/DFA and lazy DFA.
Though there is an implementation that relies only on Brzozowski derivatives: https://github.com/google/redgrep
-
Introducing: Pomsky (formerly Rulex)
redgrep did it though: https://github.com/google/redgrep
- Redgrep – grep based on regex derivatives, matches in linear time
-
Speed of Rust vs. C
It couldn't figure it out from looking through ripgrep's website: does ripgrep support intersection and complement of expressions? Like eg https://github.com/google/redgrep does.
Regular languages are closed under those operations after all.
linkify-it
-
Changing Shifts At One of The World's Most Dangerous Lighthouse.
I would only imagine that the product team must be dictating technical implementations to the devs. The devs will eventually post the user story in /r/MaliciousCompliance which will reveal that someone thought that using linkify-it was a hammer that could be applied to all scenarios.
-
Introducing: Pomsky (formerly Rulex)
There are workarounds for them, for example here's JS library which basically compiles into one huge regexp: https://github.com/markdown-it/linkify-it/blob/9482bfec2532cfccb8d7a55f1b89facf54760b48/lib/re.js
What are some alternatives?
ixy-languages - A high-speed network driver written in C, Rust, C++, Go, C#, Java, OCaml, Haskell, Swift, Javascript, and Python
url-unshort - Short links expander for node.js
smartstring - Compact inlined strings for Rust.
embedza - Create HTML snippets/embeds from URLs using info from oEmbed, Open Graph, meta tags.
libskry_r - Lucky imaging library
url-pattern - easier than regex string matching patterns for urls and other strings. turn strings into data or data into strings.
barre - A Regular Expression Library and CFG parser for Rust using Brzozski Derivatives
normalize-url - Normalize a URL
fst - Represent large sets and maps compactly with finite state transducers.
speakingurl - Generate a slug – transliteration with a lot of options
ixy - A simple yet fast user space network driver for Intel 10 Gbit/s NICs written from scratch
Prerender Request Blacklist - Prerender plugin help to blacklist and abort all css, png, font request in chrome hreadless