Intersect-Selecting Vertices?

Hey folks.

I’m doing some boxmodelling right now, and having recently done a lot of work in GIMP and Photoshop, I find myself in wanting for a tool that will allow me to first select a set of verts, and then drag either the box-select (B-key) or the free-select/lasso-select (ctrl-LMB) around the verts that I want to keep selected, and then on-release have the rest of the verts outside of the area become deselected (intersection-select).

In GIMP this is done by holding ctrl+shift, and in Photoshop ctrl+alt, I believe, and then dragging over the area that you want to keep, the program will then deselected any currently-selected stuff outside of the designated area. Insanely useful in 2D, and I think it might also have its uses in 3D. Anyway, is there any such functionality in Blender currently, or am I going to have to pop the hood for this one?