C# – Validate Bangladeshi phone number with optional +88 or 01 preceeding 11 digits

angularjsc++mobileregex

I am using the following regular expression to validate an Indian phone number.

I want optional +88 or 01 before 11 digits of phone.

Here is what I am using:

string mobileNumber = "+8801000000000";
if (new Regex(@"^([01]|\+88)?\d{11}").IsMatch(mobileNumber)){
    MessageBox.Show("Mobile number is valide", "All information is required", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
}
else{
     MessageBox.Show("Mobile number is not valide", "All information is required", MessageBoxButtons.OK, MessageBoxIcon.Error);
}

How can I do it?

UPDATE

If I write mobile no. preceding 01, for more than 11 digit it notify validation mgs(Not valid mobile no.!). Well I used, it fails when 13 digit. It alters validation mgs wrongly.

Here is my code:

<input type="text" placeholder="Enter bKash wallet number" 
  class="form-control" ng-model="BkashWalletNo" ng-disabled="AutoConfirmed" 
    name="BkashWalletNo" ng-pattern="/^(?:\+88|01)?\d{11}\r?$/" />
<p class="help-block" ng-show="form.BkashWalletNo.$error.pattern">Not valid mobile no.!</p>

Best Solution

You may use any one of given solution to validate Bangladeshi mobile number.

regular expression 1:

/(^(\+88|0088)?(01){1}[3456789]{1}(\d){8})$/

regular expression 2

 /(^(\+8801|8801|01|008801))[1|3-9]{1}(\d){8}$/

regular expression 3

 (^([+]{1}[8]{2}|0088)?(01){1}[3-9]{1}\d{8})$

Allowed mobile number sample

+8801812598624

008801812598624

01812598624

01712598624

01672598624

01919598624

01419598624

01319598624

etc