4 ms·
Heh, I just fed autoregex a regex from one of my projects, and it simply times out. It comforts me to know that billion dollar LLMs have to chew on those just a
by janfoeh 2y ago
Heh, I just fed autoregex a regex from one of my projects, and it simply times out. It comforts me to know that billion dollar LLMs have to chew on those just as much as I do.
- dleeftink 2y agoA proper litmus test, what's causing the hang in your case? Regex to me, is pattern finding and abstraction taken to the extreme. I like the challenge
- janfoeh 2y agoGood question. The regex I tried is for extracting amounts in EUR and USD: / (?<=^|[ \t]) (?<currency_prefix_with_space> (?<currency_prefix> €|EUR|\$|USD ) [ \t]? )? (?<number> (?<integral> -? \d{1,3} (?:[\.,]\d{3}|\d*) ) [\.,] (?<fraction> \d{2,3} ) ) (?<currency_postfix_with_space> [ \t]? (?<postfix_or_ending> (?<currency_postfix> €|EUR|\$|USD ) ) | (?<ending> [ \t]|$|\n ) )/x
- dleeftink 2y agoI'd imagine many nested named capturing groups may trip even the best automated system! I do like the solution though. I would've probably approached it differently, trying to first get the 'inverted' match (i.e. ignore anything that isn't a currency-like pattern) and refine from there. A bit like this one I did a while back, to parse garbled strings that may occur after OCR [0]. I imagine the approach does not translate fully, because it's pattern extraction rather than validation. [0]: https://observablehq.com/@dleeftink/never-go-nuts https://observablehq.com/@dleeftink/never-go-nuts
- janfoeh 2y agoThanks for sharing! I have to admit I do not have the necessary brain cycles to spare today, but OCR processing is indeed of interest to me, and I will take a more in-depth look in the upcoming days. The idea of an exclusionary approach sounds interesting as well. I'll have to think about that a bit.
- tclancy 2y agoI think what's causing the hang is using the site. I gave it [a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12} and it sat thinking about things for a few minutes. So I tried the reverse and asked it "Match a UUID" and it sat and thought about things. Now I am enlightened.
- janfoeh 2y agoAww shucks, and here I was feeling a wee bit proud of myself for managing to break it.