Function to add dashes to US phone number in PHP
$number = "1234567890";
$formatted_number = preg_replace("/^(\d{3})(\d{3})(\d{4})$/", "$1-$2-$3", $number);
EDIT: To be a bit more generic and normalize a US phone number given in any of a variety of formats (which should be common practice - there's no reason to force people to type in a phone number in a specific format, since all you're interested in are the digits and you can simply discard the rest):function localize_us_number($phone) {
$numbers_only = preg_replace("/[^\d]/", "", $phone);
return preg_replace("/^1?(\d{3})(\d{3})(\d{4})$/", "$1-$2-$3", $numbers_only);
}
echo localize_us_number("5551234567"), "\n";
echo localize_us_number("15551234567"), "\n";
echo localize_us_number("+15551234567"), "\n";
echo localize_us_number("(555) 123-4567"), "\n";
echo localize_us_number("+1 (555) 123-4567"), "\n";
echo localize_us_number("Phone: 555 1234567 or something"), "\n";
Javascript dashes in phone number
First, clean your input by deleting all chars that are not numbers (ref.: Regex to replace everything except numbers and a decimal point)
Then, you put your dashes.
function addDashes(f)
{
f_val = f.value.replace(/\D[^\.]/g, "");
f.value = f_val.slice(0,3)+"-"+f_val.slice(3,6)+"-"+f_val.slice(6);
}
Format 10-digit string into hyphenated phone number
$areacode = substr($phone, 0, 3);
$prefix = substr($phone, 3, 3);
$number = substr($phone, 6, 4);
echo "$areacode-$prefix-$number";
You could also do it with regular expressions:preg_match("/(\d{3})(\d{3})(\d{4})/",$phone,$matches);
echo "$matches[1]-$matches[2]-$matches[3]";
There are more ways, but either will work. Format Phone Number with No Whitspaces
You can get it done for any format of US phone numbers by using this -
$phone = "1234567890";
$numbers_only = preg_replace("/[^\d]/", "", $phone);
echo preg_replace("/^1?(\d{3})(\d{3})(\d{4})$/", "$1-$2-$3", $numbers_only);
Output123-456-7890
Add dash in auto complete phone number
$('#phone-number-field').keyup(function(){
$(this).val($(this).val().replace(/(\d{3})\-?(\d{3})\-?(\d{4})/,'$1-$2-$3'))
});
Formatting Phone Numbers in PHP
$data = '+11234567890';
if( preg_match( '/^\+\d(\d{3})(\d{3})(\d{4})$/', $data, $matches ) )
{
$result = $matches[1] . '-' .$matches[2] . '-' . $matches[3];
return $result;
}
Format 32-character string with hyphens to become UUID
<?php
//$UUID = 42f704ab-4ae1-41c7-8c18-5558f944774
$UUID = "42f704ab4ae141c78c185558f9447748";
$UUID = substr($UUID, 0, 8) . '-' . substr($UUID, 8, 4) . '-' . substr($UUID, 12, 4) . '-' . substr($UUID, 16, 4) . '-' . substr($UUID, 20);
echo $UUID;
How do you format a 10 digit string into a phone number?
A regex is definitely overkill for this one. If you wanted to take a "phone number" and normalize it to 10 digits, that would be a good use for a regex. To do what you're asking, just do something like:
echo '('.substr($data, 0, 3).') '.substr($data, 3, 3).'-'.substr($data,6);
Since you already know how to divide up your data, you can just use substr or something similar to grab the parts you want. RegEx is useful for matching strings which don't always have a strict format. (Like variable numbers of spaces, variable stuff before or after it, extra dashes, etc). But in your case the input is always strictly formatted 10 digits, nothing else, so you don't need the extra overhead of a RegEx to format it. PHP find phone number in a string with all possible combinations
different approeach:
"/[(]*\d{3}[)]*\s*[.\-\s]*\d{3}[.\-\s]*\d{4}/"
Related Topics
PHP Utf-8 to Windows Command Line Encoding
PHP Class: Global Variable as Property in Class
Facebook Graph API - Friends Using Application
Magento Products by Categories
How to Avoid Request Entity Too Large 413 Error
No Hint Path Defined for [Mail] Laravel 5.4
Compare Object Properties and Show Diff in PHP
Calculating Working Hours Between Two Dates
How Can Clear Screen in PHP Cli (Like Cls Command)
Upgrading Laravel 5.5 to 5.6 Error
Shortcodes Inside a Shortcode - Wordpress
How to Tag a User in a Photo Using the Facebook Graph API
Does HTML_Entity_Decode Replaces &Nbsp; Also? If Not How to Replace It
Encoding Byte Data into Digits
PHP - Simplexml - Addchild with Another Simplexmlelement
Built in Support for Sets in PHP
PHP - Ini_Set('Session.Gc_Maxlifetime', 5) - Why It Doesn't End the Session