I need to validate the phone number and fax numbers based on culture in C#
For example : In India the phone number will be 040 - 243841455 but in portuguese it will be +91-45754231
Here i need to validate the number without regular expression
Thanks in advance
Hemant SrivastavaPosted Nov 6, 2013, 2:34 PM
I doubt without using regualr expression you could validate the format of the numbers.
However you could validate number itself irrespective of its format in the following way. Here only digits of a number are retrieved from any format of phone numbers and then we compare them.
using System;
using System.Collections;
class Program
{
static void Main()
{
string num = "800-555-1212";
string num1 = "(800) 555 1212";
if (FetchDigitsOnlyFromPhoneNumber(num) == FetchDigitsOnlyFromPhoneNumber(num1))
{
Console.WriteLine("Equal Numbers !");
}
else
{
Console.WriteLine("Unequal Numbers !");
}
Console.Read();
}
private static string FetchDigitsOnlyFromPhoneNumber(string formattedNumber)
{
string cleanedNumber;
cleanedNumber = formattedNumber;
cleanedNumber = cleanedNumber.Replace("(", string.Empty);
cleanedNumber = cleanedNumber.Replace(")", string.Empty);
cleanedNumber = cleanedNumber.Replace("+", string.Empty);
cleanedNumber = cleanedNumber.Replace("-", string.Empty);
cleanedNumber = cleanedNumber.Replace(" ", string.Empty); //Blank
cleanedNumber = cleanedNumber.Replace(".", string.Empty);
return cleanedNumber;
}
}