Coding Horror

programming and human factors

RegexBuddy and Friends

Jan Goyvaerts released a new version of RegexBuddy today. I've talked about this tool before-- it's easily the best regex tool available. Some feature highlights for this version are:

  • Built in GREP tool
  • Visual regular expression debugging support
  • Full unicode support

The GREP tool is an unexpected bonus; it's a mini version of his full PowerGrep application, which I use occasionally. GREP is a natural (and very UNIX-y) progression once you've mastered regular expressions; consider the utility of regexes on files and folders instead of strings and you've got the idea. Jan also maintains the excellent and free tutorial site. It's a great reference.

Have you noticed that the Visual Studio .NET find dialog supports regular expression searches? That's the good news. The bad news is, Microsoft decided to use bizarro world regular expression syntax. Many of the key regex tokens are the same, but they behave in ways I wouldn't expect from a regex search. For example, searching for "[a-z]+" results in a match on entire words, but it also results in per-character matches in the word unless you tick the "Match whole word" option. So be prepared for some trial and error. Why couldn't Microsoft just use standard regex syntax, like the built in .NET regex classes? If it's a compatibility issue, why not let us select between bizarro and standard regex syntax? I also heard that the VS.NET 2005 find dialog has the same problem, which is disappointing.

There is at least one add-in that provides standard regex find support in VS.NET 2003. I've tried it, and it needs a bit of polishing, but it's functional.

Written by Jeff Atwood

Indoor enthusiast. Co-founder of Stack Exchange and Discourse. Disclaimer: I have no idea what I'm talking about. Find me here: