(.) means that any character, ".", any number of times, "", will be captured as a match. The "/" is to allow for people that use trailing slashes or not in the URLs when browsing to folders. The "?" means 0 or 1 of the previous character (or range). The $ marks the end of the line.
So essentially that will match all of the following:
http://www.site.com/blah
http://www.site.com/blah/
http://www.site.com/blah/boo/blue/
But it will not match
http://www.site.com/blah.php
http://www.site.com/blah/index.html
http://www.site.com/blah/boo/blue/some/other/dir/.htaccess[/code]
Hope that helps. If you need help with regular expressions, O'Reilly puts out a nice reference for them. There is also this reference: http://weblogtoolscollection.com/regex/regex.php (Link to O'Reilly's e-book at the bottom).