Skip to main content
Ben Nadel at dev.Objective() 2015 (Bloomington, MN) with: Kev McCabe
Ben Nadel at dev.Objective() 2015 (Bloomington, MN) with: Kev McCabe

I Won Steven Levithan's Regular Expression Contest!

By
Published in Comments (9)

I know this is way late (still trying to catch up on my backlog of to-do items post-CFUNITED), but I am pretty exciting about winning Steven Levithan's Regular Expression contest. I submitted an XML document parser that parses the given XML file using a file input stream rather than an entire file read. It was meant to act in the same way that the SAX XML parser works (as an experiment, not as a replacement).

Thanks to Steven Levithan for putting on the contest and for being as big a proponent of regular expressions as I am!

Reader Comments

66 Comments

Nice job, Ben!

For those of you who aren't aware of it, I was the inadvertent inspiration for Ben being the Master of Regexes that he is. You see...

One day I was "concentrating" on a hard problem -- the kind of hard problem that entire think tanks work on. You know: really hard.

Anyway, while I was deep in thought, I may have inadvertently slumped over onto my keyboard. Certainly, when Ben came in the room, this was the impression he must have had.

"Are you all right, Hal?" Ben asked.

"Hmm...What...Where am...Oh, Ben. Um, yes, of course. I was just working out the algorithm I'll need for this project." I then got up to splash my face with cold water and get some coffee. When I came back, Ben was staring at my screen.

"What is it, Ben?" I asked.

"It looks like you fell asleep. There's a bunch of random letters and characters on the screen," he said.

"Why, err...nonsense! Don't you know a regex when you see one?"

That began Ben's journey into regex mastery. The rest is history.

Oh, and the strange characters that started this off? Once Ben translated it, it turned out to be a remarkably clever proof of an algorithm for which I was nominated for a Nobel Prize in Programming.

But enough about me. Congrats, Ben.

15,848 Comments

I would not have believed it if I were not there :) Had Hal's face not gotten all friendly with that keyboard, I dare not think where I would be today.

9 Comments

its just amazing how tings work out out sometime, congrats Ben for your award any chance you plan on adding to the XML parsar ceated?

167 Comments

Props on owning that c-test.

While we're on the subject, for the developers that have perpetually re-queued "Learn regular expressions" to the bottom of their study queue, where would you recommend we start to become as expert and REGEX savvy as possible with as little an investment of time as possible (ideally about 3-4 minutes total) ?

Where did you start? What helped you the most (besides being a genius)?
Thanks!

15,848 Comments

@David,

Here is a post that has a great tutorial:

www.bennadel.com/index.cfm?dax=blog:507.view

.. and here is a tutorial that I wrote for my developers when I was at Nylon Technology:

www.bennadel.com/index.cfm?dax=blog:458.view

Just start out with simple ones and go from there. And the key that I always try to get across to people - don't worry about reading regular expression; they are very hard to read. Just worry about writing them.

Good luck!

1 Comments

Hi,

Do you know of any tools/code that will read through a set of values and generate regular expressions? Thanks for any info.

I need some way to automatically score consistency across a set of database field values.

BH

15,848 Comments

@Brian,

Can you explain a little bit more about what you mean? I am not sure that I fully understand what you are trying to do?

I believe in love. I believe in compassion. I believe in human rights. I believe that we can afford to give more of these gifts to the world around us because it costs us nothing to be decent and kind and understanding. And, I want you to know that when you land on this site, you are accepted for who you are, no matter how you identify, what truths you live, or whatever kind of goofy shit makes you feel alive! Rock on with your bad self!
Ben Nadel