|
Ron Anders wrote: They should be called irregular expressions.
Or ChineseExpressions, because I'll become more proficient in Chinese before RegEx!
As the aircraft designer said, "Simplicate and add lightness".
PartsBin an Electronics Part Organizer - Release Version 1.3.0 JaxCoder.com
Latest Article: SimpleWizardUpdate
|
|
|
|
|
Joking aside, more trivially I believe the term "regular" refers to the third level of Chomsky's hierarchy, which, precisely, is defined as Type3-Regular. DFA (Deterministic Finite Automaton) are FSA (Finite State Automaton).
|
|
|
|
|
Can confirm.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
The following quote is the only good thing I've found in relation to RegEx...
Anonymous Dev said: Some people, when confronted with a problem, think "I know, I'll use a RegEx."
Now they have two problems.
|
|
|
|
|
RegExes are like any other tool/language. Great if you've learned how to use it, otherwise you're likely to get annoyed.
Many people here probably touch type, but the first time you used a keyboard you possibly thought "why can't they just put the letters in alphabetical order so they're easy to find?"
|
|
|
|
|
StarNamer@work wrote: "why can't they just put the letters in alphabetical order so they're easy to find?" A better question is "why are we so enslaved to tradition that we keep using a layout optimized for the Remington No 2 mechanical typewriter over 100 years ago?" And, please, don't get me started on the sexagesimal system used for time and degrees!
Mircea
|
|
|
|
|
Take my QWERTY keyboard away? Over my dead body!
Paul Sanders.
If I had more time, I would have written a shorter letter - Blaise Pascal.
Some of my best work is in the undo buffer.
|
|
|
|
|
Mircea Neacsu wrote: why are we so enslaved to tradition that we keep using a layout optimized for the Remington No 2 mechanical typewriter over 100 years ago
I believe because, despite claims (and faked data), no alternative has been shown to actually be better.
If I recall correct one of the magazines, either "Skeptical Inquirer" or "Skeptic" had at least one article in say the past 10 years that documented the history of that.
Possible that there might be some that are as good as, but then that by itself is no reason to switch.
|
|
|
|
|
I recall this too.
Qwerty I heard was in part laid out to slow typists down so the mechanical typewriter could keep up. I heard it from the Beagle Bros back in the 1980s so I don't know how true it is.
Either way, presumably eventually that wasn't an issue anymore.
And Devorak was a common alternative, or at least common as qwerty alternatives go.
It was touted as better, but despite the hype I remember reading that it didn't actually improve people's WPM.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
honey the codewitch wrote: out to slow typists down so the mechanical typewriter could keep up
Not exactly. Rather the layout exists to allow typing to be faster.
QWERTY - Wikipedia[^]
"but rather to speed up typing. Indeed, there is evidence that, aside from the issue of jamming, placing often-used keys farther apart increases typing speed, because it encourages alternation between the hands."
honey the codewitch wrote: but despite the hype
I believe that was the one where the data was faked.
|
|
|
|
|
|
Too funny. Yeltsin was a good sport there.
Paul Sanders.
If I had more time, I would have written a shorter letter - Blaise Pascal.
Some of my best work is in the undo buffer.
|
|
|
|
|
Becoming fluent in regex is they first step to becoming a wizard.
But a word of warning, never say them out loud, as there is a very good chance you will summon an evil demon (not daemon).
Nothing succeeds like a budgie without teeth.
To err is human, to arr is pirate.
|
|
|
|
|
So you are fluent, then.
Paul Sanders.
If I had more time, I would have written a shorter letter - Blaise Pascal.
Some of my best work is in the undo buffer.
|
|
|
|
|
I'm absolutely with you on that. Also, with PCREs, the /x switch allows you to indent and comment to your heart's content, so you can write perfectly legible code, and there are on-line engines where you can drop your expression and your input and watch step by step while it does its magic. I'm not sure that I do a day's work without writing a regex and I know of no tool with anywhere near the power for parsing text.
~~~~~~~~
<°}}}>«<
|
|
|
|
|
seismofish wrote: I know of no tool with anywhere near the power for parsing text.
Well, tokenizing text at least.
I've written plenty of parsers, everything from LL(1) to GLR. GLR is the most powerful parsing algorithm I know of, allowing you to parse ambiguous grammars and return one tree for each possible interpretation.
My parsers almost always use regex to tokenize, but they don't use it to parse.
Instead, I take those tokens, and a Push Down Automaton and use that to generate trees.
Sorry, not trying to be pedantic so much as continue to convo.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
|
The problem with regular expressions, is that most of us use them once every couple of years and we have to relearn everything from scratch every time.
For someone who's doing RE everyday, it's simple;
I used to have a boss that was like that; we all went to her to write/debug our RE.
(and we never document the RE in the code )
CI/CD = Continuous Impediment/Continuous Despair
|
|
|
|
|
A modest proposal:
Learn the DFA subset. Commit it to memory, and forget the rest.
DFA is the non-backtracking subset of regular expressions
() - capture and group
[] - match char ranges
* - match zero or more
+ - match one or more
? - match zero or one
. - match any single character
| - match a or b (a|b)
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
modified 15-Dec-23 5:19am.
|
|
|
|
|
Agree. A good and practical recommendation!
"A little time, a little trouble, your better day"
Badfinger
|
|
|
|
|
would not
? match zero or one
not be part of that? or is that a posix extension?
"A little song, a little dance, a little seltzer down your pants"
Chuckles the clown
|
|
|
|
|
You're right. Totally spaced that I edited.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
I have worked at several companies where I was the only one that could do bit fiddling/manipulation. I have worked with developers that did not even know what that was.
But I do regexes also.
|
|
|
|
|
I have a love hate relationship with bit twiddling. I don't mind writing that code, but I hate having to read it.
And I hate the process of commenting it because it tends to take a compact thing and make it necessarily verbose.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
Since there are good regex interpreters online, I'm good with using them.
|
|
|
|