One of the things that is kind of annoying about regular expressions is that every programming language implements them slightly differently. If you can, find someone who can give you the low-down in this new language. Otherwise, you’ll have to stick with googling, which can take a while to figure out what you need. I’ll get you started with a few languages.
General Resources
Two of my favorite and most helpful resources:
Regular Expressions in Ruby
One of the easiest ways to get started with regular expressions in Ruby is via Rubular.com. This site provides a way to test regular expressions against any text, as well as a quick cheat sheet to help. RegExPlanet.com also has a Ruby tester that is in beta.
Regular Expressions in Java
For help with Java, I really like using the tester at RegExPlanet.com. It does two really cool things.
- Different Java methods (apparently) use regular expressions differently. RegExPlanet.com shows if and how a regular expression will work with each of the methods.
- RegExPlanet.com also provides the ‘Java string’ for use in Java methods. In Java, we have to escape the backslashes with additional backslashes. This can get pretty confusing very quickly, so having RegExPlanet.comgenerate that string for me is very helpful.
Regular Expressions in JavaScript
Using regular expressions in JavaScript was where I really began using the pattern modifiers. If a regular expression is between two forward slashes, pattern modifiers are the letters that come after the last forward slash.
/hello/i
This regular expression will match the word ‘hello’ as well as capitalized ‘Hello’, and all caps ‘HELLO’. It will even match the super fancy ‘hElLo’, if you are into crazy stuff like that. The i
modifier tells the regular expression to be case-insensitive.
Another really useful modifier for regular expressions in JavaScript is g
, which stands for ‘global’. In JavaScript, regular expressions will find the first time it matches a pattern and then stop. Using the g
modifier tells it to find ALL the instances where a string matches the given pattern.