Será que tem alguém aí fera em delphi pra me dar um help, ou que conheça alguma
lista boa de discussão sobre dlphi?
Obrigado.
Atenciosamente.
---------------------------------------------------------
Alan Cota
Companhia Siderúrgica de Tubarão
Téc. de Suporte - Telemática.
Tel.: (27) 348-1369 e 348-1255.
Cel.: (27) 9996-7112
Fax.: (27) 348-1321 p/ chave T33627.
M@il to: alancota@...
--------------------------------------------------------
amigos alguem pode me ajudar
eu tenho 5 colunas tipo assim:
linux: novo: sei: teste: geral:
linux: novo: sei: teste: geral:
linux: novo: sei: teste: geral:
gostaria que fosse assim: no awk eu sei gostaria de saber no sed:
linux: novo: sei: teste: geral:
linux: novo: sei: teste; geral:
linux: novo: sei: teste: geral:
se possivel com dois exemplos com 75 colunas e livre ok.
obrigado.
Sou iniciante, mas tente
sed 's/ {2,}/ /g'
Acho que é isso. Substitua espaços em branco maiores que 2 por um espaço.
On Sat, 4 Nov 2000, alexandro@... wrote:
>
> amigos alguem pode me ajudar
>
> eu tenho 5 colunas tipo assim:
>
> linux: novo: sei: teste: geral:
> linux: novo: sei: teste: geral:
> linux: novo: sei: teste: geral:
>
> gostaria que fosse assim: no awk eu sei gostaria de saber no sed:
>
> linux: novo: sei: teste: geral:
> linux: novo: sei: teste; geral:
> linux: novo: sei: teste: geral:
>
>
> se possivel com dois exemplos com 75 colunas e livre ok.
>
>
> obrigado.
>
>
>
>
>
>
[]'s
Zé
Olá amigos,
Gosta de Novidade.. Dá uma olhada neste site e veja do que a
TECNOLOGIA é capaz de fazer...
Assisti o FANTÁSTICO de ontem na REDE GLOBO, fiquei interessado no
assunto e encontrei este site.
Recomendaria aos amigos que deem uma olhada..
http://www.globalsoftware.com.br/neurotek
Aê galera, tudo legal? Olha, eu estou tentando instalar o Conectiv Linux 5 mo
meu micro e não dá certo de jeito nenhum!!
Eu tenho um pentium 3 com um hd de 13 Gb, que já veio de fábrica com uma
partição única de 12 Gb com o ruWindows 98. Mas desta partição do ruwindows 98
eu estou usanso apenas 3 Gb, sobrando 9 Gb livres dentro da partição. Como eu
faço para criar uma partição com este espaço que está sobrando da partição do
ruwindows 98, tipo dos 12 Gb, eu tirar 3 Gb para o Linux, e para a partição do
ruwindows 98 eu deixo 3 Gb livres.
Se alguém souber como fazer, eu agradeço.
Um abraço.
Atenciosamente.
************************************************
Alan Cota
Tec. Suporte Help-Desk - Telemática.
Companhia Siderúrgica de Tubarão.
Tel.: (27) 348-1251 e 348-1255.
Fax.: (27) 348-1321 p/ chave T33627.
M@il to: alancota@...
************************************************
desculpe meu amigo mas esta pergunta seria para outra linux
linux-br@...
On Wed, 8 Nov 2000, Alan Cota - Alan wrote:
> Aê galera, tudo legal? Olha, eu estou tentando instalar o Conectiv Linux 5
> mo meu micro e não dá certo de jeito nenhum!!
>
> Eu tenho um pentium 3 com um hd de 13 Gb, que já veio de fábrica com uma
> partição única de 12 Gb com o ruWindows 98. Mas desta partição do ruwindows
> 98 eu estou usanso apenas 3 Gb, sobrando 9 Gb livres dentro da partição.
> Como eu faço para criar uma partição com este espaço que está sobrando da
> partição do ruwindows 98, tipo dos 12 Gb, eu tirar 3 Gb para o Linux, e
> para a partição do ruwindows 98 eu deixo 3 Gb livres.
>
> Se alguém souber como fazer, eu agradeço.
>
> Um abraço.
>
>
>
>
> Atenciosamente.
>
>
> ************************************************
> Alan Cota
> Tec. Suporte Help-Desk - Telemática.
> Companhia Siderúrgica de Tubarão.
> Tel.: (27) 348-1251 e 348-1255.
> Fax.: (27) 348-1321 p/ chave T33627.
> M@il to: alancota@...
> ************************************************
>
>
>
>
>
>
>
Como eu faço para me inscrever lá?
Valeu.
Atenciosamente.
************************************************
Alan Cota
Tec. Suporte Help-Desk - Telemática.
Companhia Siderúrgica de Tubarão.
Tel.: (27) 348-1251 e 348-1255.
Fax.: (27) 348-1321 p/ chave T33627.
M@il to: alancota@...
************************************************
Ricardo wrote:
>
> Tenho o arquivo abaixo.
>
> Preciso recuperar o primeiro log.
>
> O log começa debaixo de date: e termina antes do
> ----------------------------
>
> Como proceder?
>
> RCS file: /home/cvs/desenvolvimento/RICARDO/compila-sgml.sh,v
> Working file: compila-sgml.sh
> head: 1.44
> branch:
> locks: strict
> access list:
> symbolic names:
> keyword substitution: kv
> total revisions: 10; selected revisions: 10
> description:
> ----------------------------
> revision 1.44
> date: 2000/11/08 16:58:53; author: ricardo; state: Exp; lines: +2 -0
> atualizado através do vim
> ----------------------------
Seria:
sed -n '/date/,/----------------------------/p'
--
+------------------------------------------------------------
| Elgio Schlemer - http://www.inf.ufrgs.br/~elgio
| Aluno do Curso de Pos-Graduacao em Ciencia da Computacao
| Pagina pessoal: http://www.aletheia.art.br/elgio
+------------------------------------------------------------
"O mundo me intriga. E nao posso crer que este relogio exista
e que nao haja o relojoeiro" (Voltaire)
Ricardo wrote:
> > sed -n '/date/,/----------------------------/p'
> >
>
> Retornou todos os logs. Eu estou tentando pegar somente o primeiro.
>
> abraços
Hummm.
Nao tenho muita experiencia no sed, entao vai uma solucao nada
otimizada,
mas que funciona:
sed -n '/date/,/----------------------------/p'|sed '/-------------/q'
O primeiro sed pega todos os registros e o ultimo sai fora
ao encontrar o final de um registro. Nao consegui colocar
as duas regras em um unico sed.
--
+------------------------------------------------------------
| Elgio Schlemer - http://www.inf.ufrgs.br/~elgio
| Aluno do Curso de Pos-Graduacao em Ciencia da Computacao
| Pagina pessoal: http://www.aletheia.art.br/elgio
+------------------------------------------------------------
"O mundo me intriga. E nao posso crer que este relogio exista
e que nao haja o relojoeiro" (Voltaire)
oi elgio,
@ 9/11, Elgio Schlemer:
> Ricardo wrote:
> > > sed -n '/date/,/----------------------------/p'
> > >
> >
> > Retornou todos os logs. Eu estou tentando pegar somente o primeiro.
> >
> > abraços
>
> Hummm.
> Nao tenho muita experiencia no sed, entao vai uma solucao nada
> otimizada,
> mas que funciona:
>
> sed -n '/date/,/----------------------------/p'|sed '/-------------/q'
>
> O primeiro sed pega todos os registros e o ultimo sai fora
> ao encontrar o final de um registro. Nao consegui colocar
> as duas regras em um unico sed.
é só fazer assim:
- apagar tudo do começo até o primeiro date
- quando chegar no -----------------, pare
sed '1,/date/d;/---------------/q'
só que isso diferentemente do teu, apaga a linha da data.
se ela for necessária, aí ou usa o que você sugeriu com 2 sed ou
usa os blocos {}
sed '1,/date/{/date/!d;};/---------------/q'
tradução: da linha 1 até a linha date, _se_ tiver 'date' na
linha, _não_ a apague, ou seja, apague todas as outras que não
sejam 'date'
--
s·:(·>(·×^a]×http://www.verde666.org×^[:wq
"alexandro@..." wrote:
>
> "Pessoal estou com este probleminha aqui gostaria de saber se alguem
> pode me ajudar"
>
>
> Muito obrigado pela ajuda......
> ele fica assim:
>
> coluna1: besteira coluna2:besteira coluna3:besteira coluna4:besteira
> coluna1: besteira coluna2:besteira coluna3:besteira coluna4:besteira
> coluna1: besteira coluna2:besteira coluna3:besteira coluna4:besteira
> coluna1: besteira coluna2:besteira coluna3:besteira coluna4:besteira
>
> gostaria assim:
>
> coluna1: besteira coluna2:besteira coluna3:besteira coluna4:besteira
> coluna1: besteira coluna2:besteira coluna3:besteira coluna4:besteira
> coluna1: besteira coluna2:besteira coluna3:besteira coluna4:besteira
> coluna1: besteira coluna2:besteira coluna3:besteira coluna4:besteira
> coluna1: besteira coluna2:besteira coluna3:besteira coluna4:besteira
> coluna1: besteira coluna2:besteira coluna3:besteira coluna4:besteira
Acompanhei as varias solucoes e nao entendi ainda exatemente
o que precisas!!!
para mim, um simples
sed 's/ \+/ /g'
resolve!!!
Ou seja, substitui 2 espacos ou mais por apenas um!
mas parece que jah deram esta sugestao e ela nao serviu...
--
+------------------------------------------------------------
| Elgio Schlemer - http://www.inf.ufrgs.br/~elgio
| Aluno do Curso de Pos-Graduacao em Ciencia da Computacao
| Pagina pessoal: http://www.aletheia.art.br/elgio
+------------------------------------------------------------
"O mundo me intriga. E nao posso crer que este relogio exista
e que nao haja o relojoeiro" (Voltaire)
Ola pessoal, recebi um email e tenho umas duvidas.
$texto =~ s/<.+?>//g;
O que o "?" faz?
$texto =~ s/\b$expressao\b/<b>$1<\/b>/gi;
E esse \b ai?
Atenciosamente,
---------------------------------------
Roberto Berto - berto@...
51 7151940 - berto@...
[...] Considerei que as botas apertadas são uma das maiores venturas da
terra, porque, fazendo doer os pés, dão azo ao prazer de as descalçar."
- Machado de Assis, Memórias Póstumas de Brás Cubas - Capítulo 36, O
Propósito de Botas
---------------------------------------
-----Mensagem original-----
De: owner-perl@...
[mailto:owner-perl@...]Em nome de francisco lopes
Enviada em: quarta-feira, 8 de novembro de 2000 06:26
Para: perl@...
Assunto: Re: pesquisa arquivos
From: "francisco lopes" <falmp@...>
rodrigo,
>- como fazer para excluir todas as tags html do texto???
$texto =~ s/<.+?>//g;
>- como colocar tambem a expressao encontrada em negrito???
$texto =~ s/\b$expressao\b/<b>$1<\/b>/gi;
se acima não funcionar, tente:
$texto =~ s/$expressao/<b>$expresao<\/b>/gi;
>- como retornar o endereco html para a pagina ???
esta eu fico te devendo.
abraços,
francisco lopes
--------------------------------------
Para entrar ou sair da lista perl
http://forums.programadores.com.br/perl/lista.mv
Arquivos da lista
http://arquivos.programadores.com.br/perl/
Estou soh chutando, mas acho que no problema dele as colunas nao sao de
largura constante. Entao o numero de espacos entre elas variaria conforme
a largura. Nesse caso me paresse uma boa pergunta, jah que eu nao saberia
resolver com sed. Sugeriria no entanto: cut e printf ou awk.
On Thu, 9 Nov 2000, # aurelio marinho jargas wrote:
> é verdade,
>
> alexandro, poderia explicar melhor, em palavras ou com mais
> exemplos diversos o que exatamente você precisa?
olá roberto,
@ 9/11, Roberto Berto':
> Ola pessoal, recebi um email e tenho umas duvidas.
>
> $texto =~ s/<.+?>//g;
> O que o "?" faz?
bem, o perl pegou as expressões regulares "normais" e criou
outras novas para fazer coisas diferentes.
o +? é uma delas.
um .+ normal casa qualquer caractere (.), uma ou mais vezes (+)
o detalhe é que ele é guloso. (no sed é .\+)
então aplicando .+a contra a frase:
frase de teste para a lista sed-br
ele vai casar:
frase de teste para a lista
enquanto o .+? vai casar:
fra
a diferença é que o +? (bem como o *?) são as versões 'não
gulosas' dos quantificadores + e *
enquanto o .+a, primeiro casa a linha toda até o final (.+) e
depois vai voltando o "cursor" até achar o 'a', ele vai voltando
e o acha no final da palavra 'lista'
já o .+?, ele não é guloso, então não casa até o fim da linha,
ele vai casando o . e sempre vendo seu a próxima ER (no caso o
'a') não foi satisfeita, então ele já pára no primeiro 'a' que
encontra.
é meio abstrato, mas 'graficamente' seria algo como
(quem não usa fonte-fixa não vai entender o 'gráfico')
frase de teste para a lista sed-br
.+ 1 98765432 (9 passos)
.+? 1234 (4 passos)
em tempo! como o sed não tem .+?, no exemplo acima você faria:
s/<[^>]\+>//g;
que é um + não guloso pois casa apenas 'não-sinal_de_menor'
> $texto =~ s/\b$expressao\b/<b>$1<\/b>/gi;
> E esse \b ai?
o \b é igual ao \< e \> do sed, é de "word Boundary", algo como
limite de palavra.
o \blista\b (no sed \<lista\>) casa somente a 'palavra' lista, ou
seja:
lista
:lista
lista?
mas não:
analista
finalista
listagem
> -----Mensagem original-----
> De: owner-perl@...
> [mailto:owner-perl@...]Em nome de francisco lopes
> Enviada em: quarta-feira, 8 de novembro de 2000 06:26
> Para: perl@...
> Assunto: Re: pesquisa arquivos
>
>
> From: "francisco lopes" <falmp@...>
>
> rodrigo,
>
> >- como fazer para excluir todas as tags html do texto???
>
> $texto =~ s/<.+?>//g;
>
> >- como colocar tambem a expressao encontrada em negrito???
>
> $texto =~ s/\b$expressao\b/<b>$1<\/b>/gi;
>
> se acima não funcionar, tente:
>
> $texto =~ s/$expressao/<b>$expresao<\/b>/gi;
>
> >- como retornar o endereco html para a pagina ???
>
> esta eu fico te devendo.
>
> abraços,
>
> francisco lopes
>
> --------------------------------------
> Para entrar ou sair da lista perl
> http://forums.programadores.com.br/perl/lista.mv
> Arquivos da lista
> http://arquivos.programadores.com.br/perl/
>
>
>
>
>
--
s·:(·>(·×^a]×http://www.verde666.org×^[:wq
@ 9/11, Fabricio Matheus Goncalves:
>
> Estou soh chutando, mas acho que no problema dele as colunas nao sao de
> largura constante. Entao o numero de espacos entre elas variaria conforme
> a largura. Nesse caso me paresse uma boa pergunta, jah que eu nao saberia
> resolver com sed. Sugeriria no entanto: cut e printf ou awk.
bem, se for isso mesmo:
campo11 campo21 campo31
campo12 campo22 campo32
tem que ficar:
campo11 campo21 campo31
campo12 campo22 campo32
aí o sed não é nem de perto a melhor ferramenta, pois você tem
que 'guardar' dados de várias posições da primeira linha e
recuperá-los (e preencher ou retirar espaços em branco) das
outras linhas. lembra que o sed é orientado a linha e relações
entre linhas são mais complicadas de tratar.
eu usaria bash, ou outra linguagem de programação, para primeiro
'pescar' o alinhamento da primeira linha, guardando em variáveis
a quantidade de colunas que cada campo ocupa e depois usando um
printf da vida com aquelas formatações %-15s para imprimir certo.
>
> On Thu, 9 Nov 2000, # aurelio marinho jargas wrote:
>
> > é verdade,
> >
> > alexandro, poderia explicar melhor, em palavras ou com mais
> > exemplos diversos o que exatamente você precisa?
>
>
>
>
>
--
s·:(·>(·×^a]×http://www.verde666.org×^[:wq
@ 26/10, Eliphas Levy Theodoro:
> Junior, @ 13:37:
> > Ola Galera eu de novo :-)
> >
> > Gostaria de validar o login de usuario
> > tenho esta ER:
> > ^[a-zA-Z0-9\-_]+$
> >
> > Porem ela nao aceita espacos e vou precisar que aceite...
> > Alguem da uma forca ai ?????
>
> $ echo "^[a-zA-Z0-9\-_]+$" | sed "s/_/_ /"
> ^[a-zA-Z0-9\-_ ]+$
ah! achei essa mensagem meio velha aqui, tem um detalhe:
no sed, dentro dos colchetes, os metacaracteres viram caracteres
normais. com exceção do hífen, que indica intervalo, como em A-Z
o escape \ dentro dos colchetes também é um \ literal.
então acima, o \- dentro dos [], querendo indicar que é um hífen
literal (escapando-o) não funciona, na verdade você está casando
um \ e um -, e como o hífen indica intervalo, na verdade o \-_
acima indica todos os caracteres existentes entre \ e _
para o hífen não ser especial dentro dos [], basta pô-lo como 1º
ou último caractere:
^[a-zA-Z0-9_-]+$
ei! agora que eu vi que o + não está escapado... mm..m.m. então
não deve ser para o sed esta ER... bem, serve pra lembrar que
alguns programas aceitam escapar coisas dentro dos [], como perl,
vim e php &:)
--
s·:(·>(·×^a]×http://www.verde666.org×^[:wq
On Thu, 9 Nov 2000, # aurelio marinho jargas wrote:
> bem, se for isso mesmo:
>
> campo11 campo21 campo31
> campo12 campo22 campo32
>
> tem que ficar:
>
> campo11 campo21 campo31
> campo12 campo22 campo32
>
> aí o sed não é nem de perto a melhor ferramenta, pois você tem
> que 'guardar' dados de várias posições da primeira linha e
Eh. Se entendi o problema, nao pode ser resolvido simplesmente
com expressoes regulares.
Pelo que entendi, ha a necessidade de LER TODAS as linhas
primeiro para descobrir o tamanho maximo de cada coluna,
e soh depois de conhecer estes valores (coluna 1 = 10,
2=15, etc) eh que se procede a formatacao usando este
valores com um printf, por exemplo...
Ou entao, podes logo impor um numero de colunas
maximo e sair imprimindo com ela, por exempl, 20.
Ou usa-se bash (mais dificil) ou perl (muito mais facil,
pois possui split).
Vamos lah...
Estou me exercitando no perl, ainda com sintaxe "Cbiana".
Lanco e os amigos aprimoram...
# ------------- cut here ----------------------
#!/usr/bin/perl
# Quantas casas de identacao?
# Colocar no printf, depois do %
while (<>) {
# Separa os campos, seja lah quantos forem.
# o que separa eh o :
@campos = split(/:/);
# para cada campo, faz...
# aqui se poderia usar uma outra variavel, por exemplo,
# size, que guardaria o maior tamanho de cada campo.
# mas ai complica um pouquinho, pois precisa-se percorrer
# todos antes, SEM PERDER os campos, para depois imprimi-los.
for ($i=0; @campos[$i]; $i++) {
# retira espacos a mais do campo atual
@campos[$i] =~ s/ +/ /g;
# retira espacos no inicio
@campos[$i] =~ s/^ //g;
# retira quebra de linha do campo atual
chop @campos[$i];
# imprime identado a direita
printf ("%-15s", @campos[$i]);
}
# imprime uma quebra de linha.
print "\n";
}
# ---------------------- end cut -------------------A
Eh isso? (ou proximo disso)
Acho mais dificil fazer em bash (bem, com awk eh outros 500) usando,
por exemplo, cut!
Isso porque nao se sabe quantos campos sao, e se usar
um for i in $campos, ele se perde com os espacos.
Testei no seguinte exemplo:
campo11 : campo XXXXhjjk : campod : Teste de
camp : campo : camposdfasdf: j
dsfas : sdfa : sdafa: adsfa
hhfaskdjfhask : asdfjks : asdj : 8798kfkasjdf
E ele me gerou:
campo11 campo XXXXhjjk campod Teste de
camp campo camposdfasd j
dsfas sdfa sdaf adsfa
hhfaskdjfhask asdfjks asdj 8798kfkasjdf
Nao trata tabs, que tv existam, mas eh facil tirar.
Elgio Schlemer - Mestrando em Computacao - PPGC - UFRGS
http://www.inf.ufrgs.br/~elgiohttp://elgio.pagina.de
"Nao digas a Deus que tens um grande problema. Digas ao
problema que tens um grande Deus" (baseado no Sl 121.3)
On Thu, 9 Nov 2000, # aurelio marinho jargas wrote:
> @ 9/11, alexandro@...:
> > tenho uma linha tipo:
> >
> > total de linhas=`linhas + n`
> > total de colunas=4
> > teste:$valor "espaços variados" teste1:$valor "espa..." teste2: $valor
"espa.."
> > teste:$valor "espaços variados" teste1:$valor "espa..." teste2: $valor
"espa.."
> > gostaria que executando o sed fica-se
> >
> > teste:$valor"somente um espaço" teste1:$valor "somente um espaço"
teste2:$valor
> > teste:$valor"somente um espaço" teste1:$valor "somente um espaço"
teste2:$valor
>
> mas se é isso então a primeira solução apresentada resolve, de
> trocar vários espaços em branco seguidos por apenas um:
>
> s/ \+/ /g
>
> não resolve?
Pois eh...
agora nao te entendi mesmo.
Fizeste o comando completo, tipo:
cat arquivo | sed 's/ \+/ /g' > novo_arquivo
Testa e diz o que nao funcionou.
Elgio Schlemer - Mestrando em Computacao - PPGC - UFRGS
http://www.inf.ufrgs.br/~elgiohttp://elgio.pagina.de
"Nao digas a Deus que tens um grande problema. Digas ao
problema que tens um grande Deus" (baseado no Sl 121.3)
On Thu, 9 Nov 2000, # aurelio marinho jargas wrote:
> @ 9/11, alexandro@...:
> > tenho uma linha tipo:
> >
> > total de linhas=`linhas + n`
> > total de colunas=4
> > teste:$valor "espaços variados" teste1:$valor "espa..." teste2: $valor
"espa.."
> > teste:$valor "espaços variados" teste1:$valor "espa..." teste2: $valor
"espa.."
> > gostaria que executando o sed fica-se
> >
> > teste:$valor"somente um espaço" teste1:$valor "somente um espaço"
teste2:$valor
> > teste:$valor"somente um espaço" teste1:$valor "somente um espaço"
teste2:$valor
>
> mas se é isso então a primeira solução apresentada resolve, de
> trocar vários espaços em branco seguidos por apenas um:
>
> s/ \+/ /g
>
> não resolve?
Pois eh...
agora nao te entendi mesmo.
Fizeste o comando completo, tipo:
cat arquivo | sed 's/ \+/ /g' > novo_arquivo
Testa e diz o que nao funcionou.
Elgio Schlemer - Mestrando em Computacao - PPGC - UFRGS
http://www.inf.ufrgs.br/~elgiohttp://elgio.pagina.de
"Nao digas a Deus que tens um grande problema. Digas ao
problema que tens um grande Deus" (baseado no Sl 121.3)