Advertisement
ipsbruno2016

(PHP) Filtrar placas de veículos Brasil em PHP Regex

Feb 14th, 2017
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.00 KB | None | 0 0
  1. <?php
  2.  
  3.  
  4. print_r(filtrarLetraNumero('IDO7456'));
  5.  
  6. print_r(filtrarLetraNumero('IDO--7456'));
  7. print_r(filtrarLetraNumero('IDO|7456'));
  8. print_r(filtrarLetraNumero('IDO 7456'));
  9. print_r(filtrarLetraNumero('safha37456'));
  10. print_r(filtrarLetraNumero('sgg42__--tg24'));
  11. print_r(filtrarLetraNumero('ABC                          4456'));
  12.  
  13. function filtrarLetraNumero($placa) {
  14.  
  15.     // remover tudo que não é número ou letra e deixar tudo maiusculo
  16.     $placa = strtoupper(preg_replace("/[^\w]/", '', str_replace('_', '', $placa)));
  17.  
  18.     // verificar se tem 7 caracteres: ABC1234
  19.     if( strlen($placa) != 7 ) {
  20.         return false;
  21.     }  
  22.  
  23.     // Filtrar LETRA  e Números
  24.     preg_match("/[A-Z]{3}/", $placa, $output1);
  25.     preg_match("/[0-9]{4}/", $placa, $output2);
  26.  
  27.     // Verificar se filtrou corretamente
  28.     if( isset($output1[0]) && isset($output2[0])) {
  29.         // Fazer o retorno em Letra|Numero numa array
  30.         return [ "letra" => $output1[0], "numero" => $output2[0]];
  31.     }
  32.  
  33.     // Caso não filtrou retornar null
  34.     return null;
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement