Best way to search through multiple postcode regions
In the end I used Search Builder with regular expressions on the post code field. It was quite efficient once I'd learnt the syntax for regex's!!! 

In case it's helpful for anyone else, here's some example regex's for postcode searches:

Eg1: - find all strings that begin with S25: ^S25.* 

Meaning: ^ = start at the beginning of the string, .* = followed by any character, repeated any number of times

Eg2, Find all postcodes beginning with a string between NE15 to NE47:

^NE(1[5-9]|[23][0-9]|4[0-7]).*


Meaning:
^ = start at the beginning of the string, and find all strings that begin with NE.
From there it finds all strings containing any number from 15-47:

1[5-9] = the number 1 followed by any number from 5 to 9 (ie 15-19), OR,
[23][0-9] = The number 2 or 3 followed by any number from 0 to 9 (ie 20 - 39), OR,
4[0-7] = The number 4 followed by any number from  0 to 7 (ie 40-47),
.* = any character, repeated zero or any number of times. 

Numeric ranges have no meaning inside text string searches like Regex, so they have to be constructed as above. I found this online tool to generate them automatically: http://gamon.webfactional.com/regexnumericrangegenerator/ 

Eg3: Place many postcodes searches on one line of regex in search builder:

(^S25.*)|(^TS.*)|(^HG.*)|(^HU.*)|(^DN.*)|(^WF.*)|(^HX.*)|(^HD.*)|(^BD.*)


This finds all postcodes beginning with S25, or TS, or HG, or HU, etc etc.

Hopefully that's helpful.