Skip to content Skip to sidebar Skip to footer

Regular Expression To Add Dashes To A Phone Number In Javascript

function convertToValidPhoneNumber(text) { var result = []; text = text.replace(/^\d{2}-?\d{3}-?\d{3}-?\d{3}$/, ''); while (text.length >= 6){

Solution 1:

You can use this updated function that uses ^(?=[0-9]{11})([0-9]{5})([0-9]{8})([0-9])$regex:

  • ^ - String start
  • (?=[0-9]{11}) - Ensures there are 11 digits in the phone number
  • ([0-9]{5}) - First group capturing 5 digits
  • ([0-9]{8}) - Second group capturing 8 digits
  • ([0-9]) - Third group capturing 1 digit
  • $ - String end

Replacement string - "$1-$2-$3" - uses back-references to those capturing groups in the regex by numbers and adds hyphens where you need them to be.

In case you have hyphens inside the input string, you should remove them before.

functionconvertToValidPhoneNumber(text) {  
    return text = text.replace(/-/g,"").replace(/^(?=[0-9]{11})([0-9]{5})([0-9]{8})([0-9])$/, "$1-$2-$3");
}
document.getElementById("res").innerHTML = convertToValidPhoneNumber("35200123456785") + " and " + convertToValidPhoneNumber("35-200-123-456-785");
<divid="res"/>

Solution 2:

number = this.state.number;
  var expression = /(\D+)/g;
  var npa = "";
  var nxx = "";
  var last4 = "";
  number = number.toString().replace(expression, "");
  npa = number.substr(0, 3);
  nxx = number.substr(3, 3);
  last4 = number.substr(6, 4);
  number = npa + "-" + nxx + "-" + last4

Post a Comment for "Regular Expression To Add Dashes To A Phone Number In Javascript"