Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Validating UK phone number (Regex C#)

Tags:

c#

regex

public static bool ValidatePhoneNumber(string number)
{
    return Regex.Match(number, "^(\+44\s?7\d{3}|\(?07\d{3}\)?)\s?\d{3}\s?\d{3}$", RegexOptions.IgnoreCase).Success;
}

This is what I have but I get errors saying Unrecognized escape sequence. Can anbody help? needs to be able to have +44.

like image 269
user3895591 Avatar asked Aug 06 '14 08:08

user3895591


People also ask

How do I validate a phone number format?

EPP-style phone numbers use the format + CCC . NNNNNNNNNN x EEEE , where C is the 1–3 digit country code, N is up to 14 digits, and E is the (optional) extension. The leading plus sign and the dot following the country code are required. The literal “x” character is required only if an extension is provided.


2 Answers

You may try this regex if you are trying to get it with +44

^(((\+44\s?\d{4}|\(?0\d{4}\)?)\s?\d{3}\s?\d{3})|((\+44\s?\d{3}|\(?0\d{3}\)?)\s?\d{3}\s?\d{4})|((\+44\s?\d{2}|\(?0\d{2}\)?)\s?\d{4}\s?\d{4}))(\s?\#(\d{4}|\d{3}))?$

This will match for

+447222555555 | +44 7222 555 555 | (0722) 5555555 #2222

REGEX DEMO


You can try this regex for UK phone numbers:

/^\(?0( *\d\)?){9,10}$/

This regex will check for 10 or 11 digit numbers which are there in UK numbers, starting with a 0, which may have formatting spaces between any of the digits, and optionally a set of brackets for the area code.

Also in your regex you need to add @ to get rid of that error(Unrecognized escape sequence):

public static bool ValidatePhoneNumber(string number)
{
   return Regex.Match(number, @"^(\+44\s?7\d{3}|\(?07\d{3}\)?)\s?\d{3}\s?\d{3}$", RegexOptions.IgnoreCase).Success;
}
like image 151
Rahul Tripathi Avatar answered Sep 24 '22 07:09

Rahul Tripathi


This is a pretty solid regex, will handle area codes, extension numbers and the +44 international code as well as mobile numbers and even 10 digit numbers:

^(?:(?:\(?(?:0(?:0|11)\)?[\s-]?\(?|\+)44\)?[\s-]?(?:\(?0\)?[\s-]?)?)|(?:\(?0))(?:(?:\d{5}\)?[\s-]?\d{4,5})|(?:\d{4}\)?[\s-]?(?:\d{5}|\d{3}[\s-]?\d{3}))|(?:\d{3}\)?[\s-]?\d{3}[\s-]?\d{3,4})|(?:\d{2}\)?[\s-]?\d{4}[\s-]?\d{4}))(?:[\s-]?(?:x|ext\.?|\#)\d{3,4})?$
like image 23
RattyLaa Avatar answered Sep 23 '22 07:09

RattyLaa