fork download
  1. <?php
  2. $correctNumbers = ['84951234567', '+74951234567', '8-495-1-234-567', ' 8 (8122) 56-56-56', '8-911-1234567', '8 (911) 12 345 67', '8-911 12 345 67', '8 (911) - 123 - 45 - 67', '+ 7 999 123 4567', '8 ( 999 ) 1234567', '8 999 123 4567'];
  3. $incorrectNumbers = ['02', '84951234567 позвать люсю', '849512345', '849512345678', '8 (409) 123-123-123', '7900123467', '5005005001', '8888-8888-88', '84951a234567', '8495123456a', '+1 234 5678901', '+8 234 5678901', '7 234 5678901'];
  4. $regexp = "/^([\s\+]+[7]|[\s]*[8])([\s\-\(\)]*[\d]){10}$/";
  5. foreach ($correctNumbers as $numbers) {
  6. if (preg_match($regexp, $numbers, $match)) {
  7. echo "\n$match[0]";
  8. } else
  9. echo "\nСовпадений не найдено!!!";
  10. }
  11. echo "\n";
  12. foreach ($incorrectNumbers as $numbers) {
  13. if (preg_match($regexp, $numbers, $match)) {
  14. echo "\n$match[0]";
  15. } else
  16. echo "\nСовпадений не найдено!";
  17. }
Success #stdin #stdout 0.01s 23800KB
stdin
Standard input is empty
stdout
84951234567
+74951234567
8-495-1-234-567
 8 (8122) 56-56-56
8-911-1234567
8 (911) 12 345 67
8-911 12 345 67
8 (911) - 123 - 45 - 67
+ 7 999 123 4567
8 ( 999 ) 1234567
8 999 123 4567

Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!
Совпадений не найдено!