Re: Dúvida Shell Script
Rubens,
Fiz um script em php ha algum tempo atraz que faz exatamente isso, pega
tudo que esta fora das tags <>.
fiz essa função para utilizar em um script que pegava html do oracle e
passava para html normal muito mais limpo
abaixo a função
// funcao para remover as tags
function remove($tag) {
if (stristr($tag,"<style>")) return("");
$boo = 1;
while($boo) {
$pos = strpos($tag,">");
if ($tag[0] == "<") {
$tag = substr($tag, $pos+1);
} else {
$boo = 0;
}
}
$pos = strpos($tag,"<");
$tag = substr($tag, 0,$pos);
return($tag);
}
e esse eh o trecho que le o arquivo e chama a funcao linha por linha
<?
////////////////////////////////////////////////////
// Variaveis de Configurações
// arquivo de origem
$filename = "juridica2.htm";
// Fim das configurações
// NÃO mexa nada a partir daqui
////////////////////////////////////////////////////
// funcao q le o arquivo e grava na string
$fd = fopen($filename, "r");
$filestring = fread($fd, filesize($filename));
fclose($fd);
// Funcao q cria o array frase com 1 linha por registro
$y = 0;
$x = strlen($filestring);;
for ($i=0;$i<$x;$i++) {
$frase[$y] .= $filestring[$i];
if ($filestring[$i] == "\n") {
$y++;
}
}
$t_linhas = $y;
$x = 0;
$contador = 0;
for ($x = 0;$x < $t_linhas;$x++) {
$tag = $frase[$x];
$tag2 = remove($tag);
if ($tag2 == " ") { $tag2 = "Sem telefone"; }
if (strlen($tag2) > 1) {
$ok .= "$tag2\n";
$texto[$contador] = $tag2;
$contador++;
}
}
espero ter ajudado, abraco
Felipe Roman
_______________________________
Felipe de Fraga Roman
ACS / Publicidade
ACS / Comunicação On Line
Universidade Luterana do Brasil - www.ulbra.br
felipe@ulbra.br
----- Original Message -----
From: "Rubens Saraiva Nogueira" <rubens.saraiva@mult-e.com.br>
To: <debian-user-portuguese@lists.debian.org>
Sent: Wednesday, April 30, 2003 4:23 PM
Subject: Dúvida Shell Script
> Pessoal,
>
> Como fazer para pegar dados de um arquivo especificando caracteres que
> vem antes e depois??
> Exemplo:
>
> Tenho um arquivo texto com:
> <tag>1</tag>
> <tag>ab</tag>
> <tag>ZZ</tag>
>
> Preciso retornar:
> 1abZZ
>
> Ou seja, preciso todos os dados de "tag".
>
> Obrigado.
> Rubens
>
>
>
> --
> To UNSUBSCRIBE, email to debian-user-portuguese-request@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
listmaster@lists.debian.org
Reply to: