Guest User

Untitled

a guest
Oct 23rd, 2017
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.97 KB | None | 0 0
  1. ^(d{2}) (9|)[6789]d{3}-d{4}$
  2.  
  3. <?php
  4. $celular = '(21) 98765-4321';
  5.  
  6. if (preg_match('#^(d{2}) (9|)[6789]d{3}-d{4}$#', $celular) > 0) {
  7. echo 'Validou';
  8. } else {
  9. echo 'Não validou';
  10. }
  11.  
  12. ^(((11|12|13|14|15|16|17|18|19|21|22|24|27|28|91|92|93|94|95|81|82|83|84|85|86|87|31|32|33|34|35|37|38|71|73|74|75|77|79|61|62|63|64|65|66|67|68|69|49|51|53|54|55)) 9|((?!11|12|13|14|15|16|17|18|19|21|22|24|27|28|91|92|93|94|95|81|82|83|84|85|86|87|31|32|33|34|35|37|38|71|73|74|75|77|79|61|62|63|64|65|66|67|68|69|49|51|53|54|55)d{2}) )[6789]d{3}-d{4}$
  13.  
  14. ^(((11|21)) 9|((?!11|21)d{2}) )[6789]d{3}-d{4}$
  15. ^ ^ ^ ^ ^
  16. 1 2 3 4 5
  17.  
  18. <?php
  19. function validarCelular($celular)
  20. {
  21. static $regex;
  22.  
  23. if ($regex === null) {
  24. //Coloquei em um array para identificar melhor
  25. $ddds = implode('|', array(
  26. 11, 12, 13, 14, 15, 16, 17, 18, 19,
  27. 21, 22, 24, 27, 28,
  28. 91, 92, 93, 94, 95,
  29. 81, 82, 83, 84, 85, 86, 87,
  30. 31, 32, 33, 34, 35, 37, 38,
  31. 71, 73, 74, 75, 77, 79,
  32. 61, 62, 63, 64, 65, 66, 67, 68, 69,
  33. 49, 51, 53, 54, 55
  34. ));
  35.  
  36. //Gera a regex
  37. $regex = '#^(((' . $ddds . ')) 9|((?!' . $ddds . ')d{2}) )[6789]d{3}-d{4}$#';
  38. }
  39.  
  40. return preg_match($regex, $celular) > 0;
  41. }
  42.  
  43. $celular = '(21) 98765-4321';
  44.  
  45. if (validarCelular($celular)) {
  46. echo 'Validou';
  47. } else {
  48. echo 'Não validou';
  49. }
  50.  
  51. ((?d{2})?) ?9?d{4}-?d{4}
  52.  
  53. <?php
  54. $telefone = '(21) 98765-4321';
  55. if (preg_match('/((?d{2})?) ?9?d{4}-?d{4}/', $telefone)) {
  56. echo "O telefone passou na validação";
  57. } else {
  58. echo "O telefone não passou na validação";
  59. }
  60. ?>
  61.  
  62. $exp_regular = '^((11) [9][0-9]{4}-[0-9]{4})|((1[2-9]) [5-9][0-9]{3}-[0-9]{4})|(([2-9][1-9]) [5-9][0-9]{3}-[0-9]{4})$';
  63. $ret = preg_match($exp_regular, $phone);
  64.  
  65. preg_match($exp_regular, '(11) 92222-2222');
  66. preg_match($exp_regular, '(43) 8222-2222');
  67.  
  68. ^(((d{2}))|d{2}) ?9?d{4}-?d{4}$
Add Comment
Please, Sign In to add comment