Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia Pessoal, já estou quebrando a cabeça e não consigo resolver essa questão, tenho o seguinte código:
<?php
/ String com os países possíveis /
$country_list = 'brasil|unidos|alemanha|fran[çÇcC]a|costa\s?rica|china|jap[ãÃaA]o|it[áÁaA]lia|taiwan|argentina|su[ÉéeE]cia|cingapura|canad[ÁáAa]|dinamarca|austr[ÁáaA]lia|m[ÉéEe]xico|per[uÚúU]|uruguai|b[ÉéEe]lgica|hungria';
$country_list .= '|irlanda|porto\s?rico|[ÍíiI]ndia|\(?\s?reino\s?unido\s?\)?|hong\s?kong|indon[éÉEe]sia|su[ÍíiI][çÇ]a|portugal|espanha|r[úÚuU]ssia|chile|sul|cor[éÉeE]ia|equador|col[ôÔoO]mbia|norte|rep[ÚúuU]blica';
/ String a ser processada /
$string = "GILVAN DIAS F DE ARAUJO RIO CLARO ME 8.06005-2 Instrumentos de Uso Odontologico 25351.457511/2011-45 KIT INSTRUMENTAL BUCO MAXILO - GA INSTRUMENTAL FABRICANTE: GILVAN DIAS F DE ARAUJO RIO CLARO ME - BRASIL 400-400-018-CHAVE EM CRUZ 2,0; 400-400-009-MEDIDOR DE PROFUNDIDADE; 400-400-010-PINÇA UNIVERSAL; 400-400-011-CANULA GUIA DE BROCA 1,5/2,0; 400-400-012-CANULA REDUTORA 1,5/2,0; 400-400-013-PUNÇÃO 1,5/2,0; 400-400-014-MACHO GRADUADO 2,0; 400-400-015-CABO PARA RETRATOR DE BOCHECHA 1,5/2,0; 400-400-016-RETRATOR DE BOCHECHA 1,5/2,0; 400-400-017-Posicionador de placas 1,5/2,0; 400-500-001-Alicate de Corte Articulado 2.4; 400-500-002-Pinça Auto Centrante; 400-500-003-Pinça de Fixaçao Ossea Direita; 400-500-004-Pinça de Fixaçao Ossea Esquerda; 400-500-005-Dobrador Manual; 400-500-006-Modelador de placa; 400-500-007-CABO PARA CHAVE 2.4; 400-500-008-CHAVE EM CRUZ 2.4; 400-500-011-CANULA GUIA DE BROCA 2.4; 400-500-012-CANULA REDUTORA 2.4; 400-500-013-PUNÇÃO 2.4; 400-500-014-MACHO GRADUADO 2,4; 400-500-015-CABO PARA RETRATOR DE BOCHECHA 2.4; 400-500-016-RETRATOR DE BOCHECHA 2.4; 400-500-017-Posicionador de placas 2.4 Kit Instrumental Buco Maxilo : 400-400-024-Broca diam. 1,1 x 70; 400-400-025-Broca diam. 1,6 x 70; 400-400-026-Broca diam. 1,1 x 100; 400-400-027-Broca diam. 1,6 x 100; 400-400-001-ALICATE 1,5; 400-400-002-ALICATE 2,0; 400-400-003-ALICATE DE CORTE 1,5/2,0; 400-400-004-ALICATE DE DOBRA 1,5; 400-400-005-ALICATE DE DOBRA 2,0; 400-400-006-ALICATE LISO 1,5/2,0; 400-400-007-CABO PARA CHAVE 1,5/ 2,0; 400-400-008-CHAVE EM CRUZ 1,5/ 2,0; 400-400-009-MEDIDOR DE PROFUNDIDADE; 400-400-010-PINÇA UNIVERSAL; 400-400-011-CANULA GUIA DE BROCA 1,5/2,0; 400-400-012-CANULA REDUTORA 1,5/2,0; 400-400-013-PUNÇÃO 1,5/2,0; 400-400-014-MACHO GRADUADO 2,0; 400-400-015-CABO PARA RETRATOR DE BOCHECHA 1,5/2,0; 400-400-016-RETRATOR DE BOCHECHA 1,5/2,0; 400-400-017-Posicionador de placas 1,5/2,0; 400-400-018-ESTOJOparaPLACAS 1,5; 400-400-019-ESTOJOparaPLACAS 2,0; 400-400-020-BANDEJA de instrumentais superior 1,5/2,0; 400-400-021-BANDEJA de instrumentais inferior 1,5/2,0; 400-400-022-CAIXA PLÁSTICA; 400-400-023-Tampa para bandeja de implantes; 400-500-021-Broca diam. 2,0 x 70; 400-500-022-Broca diam. 2,0 x 100; 400-500-001-Alicate de Corte Articulado 2.4; 400-500-002-Pinça Auto Centrante; 400-500-003-Pinça de Fixaçao Ossea Direita; 400-500-004-Pinça de Fixaçao Ossea Esquerda; 400-500-005-Dobrador Manual; 400-500-006- Modelador de placa; 400-500-007-CABO PARA CHAVE 2.4; 400-500-008-CHAVE EM CRUZ 2.4; 400-500-009-MEDIDOR DE PROFUNDIDADE; 400-500-010-PINÇA UNIVERSAL; 400-500-011-CANULA GUIA DE BROCA 2.4; 400-500-012-CANULA REDUTORA 2.4; 400-500-013-PUNÇÃO 2.4; 400-500-014-MACHO GRADUADO 2,4; 400-500-015-CABO PARA RETRATOR DE BOCHECHA 2.4; 400-500-016-RETRATOR DE BOCHECHA 2.4; 400-500-017-Posicionador de placas 2.4; 400-400-024-Broca diam. 1,1 x 70; 400-400-025-Broca diam. 1,6 x 70; 400-400-026-Broca diam. 1,1 x 100; 400-400-027-Broca diam. 1,6 x 100; 400-500-021-Broca diam. 2,0 x 70; 400-500-022-Broca diam. 2,0 x 100; 400-400-001-ALICATE 1,5; 400-400-002-ALICATE 2,0; 400-400-003-ALICATE DE CORTE 1,5/2,0; 400-400-004-ALICATE DE DOBRA 1,5; 400-400-005-ALICATE DE DOBRA 2,0; 400-400-006-ALICATE LISO 1,5/2,0; 400-400-007-CABO PARA CHAVE 1,5/ 2,0; 400-400-008-CHAVE EM CRUZ 1,5; CLASSE : II 80600529001 #Petição:8030 - Cadastramento ( isenção ) de material de uso médico nacional";
/ Expressão regular /
$pattern = "/[0-9]{5}.[0-9]{6}\/[0-9]{2,4}\-[0-9]{2}(.*)fabricante:(.*)($country_list)/i";
preg_match($pattern, $string, $result);
var_dump($result);
?>
Eu utilizo essa string com os países pois é o termo comum que eu uso para explodir e separar os dados que eu preciso, no caso o resultado que eu gostaria seria esse:
Array(
[0] => "A String completa";
[1] => "KIT INSTRUMENTAL BUCO MAXILO - GA INSTRUMENTAL ";
[2] => "GILVAN DIAS F DE ARAUJO RIO CLARO ME - ";
[3] => "BRASIL";
)
Porém não tenho o resultado esperado.
Se alguem conseguir me ajudar ficaria grato
Obrigado
Carregando comentários...