Regex for to validate only US and India retail number : I am trying to get a regex which serves belwo Requirements.

1) validates US,India Retail phone no
2) exclude special purpose/Business purpose phone nos in both countries. i.e. starting from 800, 888, 877, and 866,900,at least 10 digits for US, there can be more guidelines but above is just for example.
3) It should validate special chars if any like (,),+,1,0 if included but satisfies all this points than should be a valid phone no.
4) If preceded by STD,ISD consider it as valid.
5) Landline,Mobile both should be valid. 

   I tried alot on google to get some clue if some one came across same requirements but solutions I am getting serving diff requirements and not exact one I am looking for. This is last hope. Thank you very much for your help. Thanks.