Since I went to the website pointed to by beth, I know more than I ever wanted to about North American telephone numbers. About the only guarantee that seems to be present is that the area code (NPA) won't start with 1 or match /^[2-9]11/.
I think that the answer to the crux of the OP's question is that there is no guaranteed manner of distinguishing North American (not just US) fax numbers from voice numbers. Indeed, the same line can be used for either at any time. There's also no coding scheme that distinguishes US from any other North American phone numbers: the US does not have a distinct country code, as does, say, the UK, nor can US area codes be distinguished from those of Canada by a regular expression.
As to keeping a list of exchanges by area code, one can certainly do that, but I would suspect that this is going to be even more changeable than the list of area codes. The list of individual phone numbers will change even more rapidly than the list of exchanges.
When I was doing software development in the market research industry (NOT TELEMARKETING), my then-employer contracted with more than one of the companies that actually maintain lists of residential vs business vs fax vs cell numbers so that our pollsters would call only residential numbers. The pollsters still called fax, cell, and business numbers by mistake, as the services couldn't keep up.
In reply to Re^5: Regular expression for Fax numbers
by swampyankee
in thread Regular expression for Fax numbers
by dxxd116
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |