Encontrar cartões de crédito em textos

  • Autor Autor Prospero
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
Prospero

Prospero

Eta
Verificación en dos pasos activada
Hola amigos, estaba estudiando el
explode(PHP_EOL, $str);
y resulta que quiero encontrar tarjetas de credito dentro de textos muy grandes donde incluyen saltos de lineas. no se ni como empezar.

$text = "Hola mando aqui
5522893138727330
texto5522892631323134
5522890156083513
5522896873425184Para lo demas existe Mastercard
esa5522894675210151
5522890024460588
5522896132247007Hermosa Numeracion
5522893468581752,4720880463325312,4720880641620584,4720880778555876,4720881054138668,4720887274520544,4720884511441550
'4720885165010344'
4720888054407225|es una visa
Adivina quien es 5522891873087886
5522893414775185
para que puedan ver";

adjunto un ejemplo. use un generador para crear las tarjetas, como hago para obtener todas las tarjetas en un array?
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
averigua como funciona preg_match_all y me imagino que es una de las mejores formas para conseguir lo que quieres. y tendrias que eliminar esos saltos de linea.
 
Si los dígitos de la tarjeta son de 15-16, entonces puedes usar esto:
PHP:
$subject = "String con las tarjetas de credito"
preg_match_all('/(?:[0-9]{15,16})+/s', $subject, $result, PREG_PATTERN_ORDER);
$result = $result[0];

print_r($result);

Esto te sacará un array con todos los números encontrados que tengan una continuidad de 15 a 16 dígitos
 
Si los dígitos de la tarjeta son de 15-16, entonces puedes usar esto:
PHP:
$subject = "String con las tarjetas de credito"
preg_match_all('/(?:[0-9]{15,16})+/s', $subject, $result, PREG_PATTERN_ORDER);
$result = $result[0];

print_r($result);

Esto te sacará un array con todos los números encontrados que tengan una continuidad de 15 a 16 dígitos
funciona perfecto! gracias!
 
Voltar
Topo