2014-11-05 233 views

回答

6

你可以試試下面的正則表達式,

^\+?\d{3} ?\d{3} ?\d{3} ?\d{3}$ 

DEMO

  • ^斷言,我們是在開始。
  • \+?可選+
  • \d{3}完全匹配三位數。
  • <space>?可選空間
  • $斷言我們在最後。
+0

可以正常使用,如果我願意增加一個?例如 – 2014-11-05 15:27:00

+0

0905 222 222? – 2014-11-05 15:28:02

+0

@ user1999739我的答案/正則表達式應該適用於您的示例('0905 222 222')! – Rizier123 2014-11-05 15:30:44

0

此正則表達式應該爲你工作:

$mobileNumber = "0905 222 222"; 

if (preg_match("/^(\+?)([0-9] ?){9,20}$/", $mobileNumber)) 
      echo "matches!";