Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rdsat

Selecionar parte de uma string - ER

Recommended Posts

Tenho a seguinte string proveniente de um campo do banco de dados ...

 

{\rtf1\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\fnil\fcharset0 MS Sans Serif;}}

\viewkind4\uc1\pard\f0\fs17 Benefici\'e1rio: Silvana Ribeiro Olzewski

\par Data de nascimento: 22/04/1968 \par CPF: 65888383953 \par

\par }

 

Gostaria de saber como que eu faço para pegar somente o conteúdo em negrito .. descartando todo o resto ..

???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz essas ERs e deram certo.

 

Flw =D

 

<?
$string = "{\rtf1\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\fnil\fcharset0 MS Sans Serif;}}
\viewkind4\uc1\pard\f0\fs17 Benefici\'e1rio: Silvana Ribeiro Olzewski
\par Data de nascimento: 22/04/1968 \par CPF: 65888383953 \par
\par }";

$string = str_replace(array("\r","\n"),"",$string);
$bene = preg_replace("'.*Benefi[^:]+: ?([^\\\\]+).+'","$1",$string);
$nasc = preg_replace("'.*([0-9]{2}\/[0-9]{2}\/[0-9]{4}).*'","$1",$string);
$cpf = preg_replace("'.*([0-9]{11}).*'","$1",$string);
echo "<pre>";
var_dump(array($bene,$nasc,$cpf));
echo "</pre>";

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza Obrigado cara..

 

funciono direitinho .. porém tem um problema que talvez eu não fui claro ..

 

Esta string pode ser encontrada nestes formatos tbm ..

 

{\rtf1\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\fnil\fcharset0 MS Sans Serif;}}
\viewkind4\uc1\pard\f0\fs17 Angela Maria Guimaraes Kaminski - Mae
\par }

 

{\rtf1\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\fnil\fcharset0 MS Sans Serif;}}
\viewkind4\uc1\pard\f0\fs17 Gerezinha Bearis da Silva	 
\par Herbert Inesrt
\par Grace Kelly Grubba
\par }

 

Resumindo ..

estas string são gravadas no banco de dados através de um campo memo que contem a formatação que o usuario escolhe como fonte .. tamanho da fonte e etc..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom consegui resolver meu problema ...

segue a função para quem tiver problema parecido ..

 

function formataCampo($string)
	{
		
		$string = explode("}}",$string); //separando a string {}}
		$string = explode("\fs",$string[1]);
		$string = substr($string[1],2);
		$string = str_replace("}","",$string);
		$string = str_replace("\par","\n",$string); //troca as quebras de linha
		
		//Formataçao de acentos
		$string = str_replace("\'e1","á",$string); 
		$string = str_replace("\'e7","ç",$string);
		$string = str_replace("\'e3", "a", $string);  
		$string = str_replace("\'ba", "°", $string);
		
		return $string;
	
	}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.