Follow @RoyOsherove on Twitter

Introducing Regulazy: Point & Click Regular Expression

Regulazy is an attempt to build a small “Expert System” for creating .NET Regular Expressions.
It lets the user create an expression based on a real life example of text they would like to parse.
As the user interacts with Regulazy using the mouse, Regulazy offers the user possible expressions that would fit the currently selected text. As the user selects “rules” to apply on various parts of the text,
a regular expression is built automatically in the lower application pane.
 
The end result is a visual expression builder, that for most simple parsing operations, requires the user only to know what they would like to parse, and what the parsing rules should be - Regex Syntax is *not* needed.
 
 
The current version is an alpha - It’s  stable, but there are many bugs yet to be found. The version will work until August 10th 2006. Then you’ll have to download a new version.
You can find more tools I’ve built over at /tools/ 
 
This was not an attempt to built a better Regulator, but instead, a better experience for the developer. If you need to build a complex Regex with multiple options for text inside it and such, this is not(yet) the tool you’d want to use - it supports the most basic options, and tries to solve the %80 case secnario for such simple parsing operations.
 
I hope you guys like it. It was also my first shot at working with the GDI+ system (and it shows in some places, too), in an attempt to build something with a totally different interface for building something on top of text.
 
Test-Driven Development
This tool was also built using test-driven development for most of the code (Only small parts of the UI components were tested though - all the logic exists in libraries that are well tested. It was a fun experience working alone on this, and making changes constantly to the design of the code. The more complex the logic became, the more glad I was that I had tests to make sure everything still works as advertised.
 
Helpful Tools
I’m also using SmartAssembly to obfuscate the code, link all referenced assemblies and provide a global error handling mechanism that allows you guys to upload application crash reports that I can later analyze.
I’ve reviewed that tool before, but version 1.1 of it really rocks the boat. Recommended.
 
I’m also hosting a FogBugz application over on www.fogbugzhosting.com . So if you find any bugs or think of a missing feature (and there are many, I know) , you can let me know at http://bugz.osherove.com .
 

TypeMock 3.5 is out - and it's powerful!

Interesting podcast: QAPodcast.com