簡體   English   中英

PHP - 使用正則表達式更改電話號碼格式

[英]PHP - Changing Phone Number Format with Regex

我正在試圖弄清楚如何轉換格式的電話號碼
18761234567

876-123-4567
使用替換正則表達式。

我認為這應該有效

preg_replace('/^\+1(\d{3})(\d{3})(\d{4})$/i', '$1-$2-$3', '+18761234567');

我假設+1是常量,然后使用\\d快捷方式匹配小數字符。 {}中的值是要匹配的字符數。

此外,Internet上還有一個Regexp Library。 它可能會有所幫助。

搜索“手機”:

http://www.regexlib.com/Search.aspx?k=phone&c=-1&m=-1&ps=20

我知道這不是正則表達式,但這也有效:-)

$num = '+18761234567';
$formatted = substr($num, 2, 3).'-'.substr($num, 5, 3).'-'.substr($num, 8);

這假設開頭要忽略2個字符。

preg_replace("/([0-9a-zA-Z+]{2})([0-9a-zA-Z]{3})([0-9a-zA-Z]{3})([0-9a-zA-Z]{4})/", "$2-$3-$4", '+18761234567');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM