Talvez eu tenha aprendido mais te ajudando do que tentando fazer sozinho...
esse negocio de grupos de regex abriu um leque enorme de coisa boa pra
fazer no gedit!


Em 5 de outubro de 2016 15:31, Antonio Silva <aolinto....@gmail.com>
escreveu:

> Bacana Wagner! Funcionou perfeitamente. Valeu.
>
> Abraços
>
> Antônio
>
> Em 4 de outubro de 2016 17:14, Wagner De Queiroz <
> wagnerdequei...@gmail.com>
> escreveu:
>
> > Olá Antonio, foi um prazer ajudar.
> >
> > Só para complementar, eu fiquei em dúvida sobre como usar um certo filtro
> > de regex para mexer nas cordenadas de gps de seu exemplo,
> >
> > eu estava usando na busca
> > -\d\d\,\d\d\d\d  e botão localizar achava corretamente as coordenadas.
> > mas fiquei na dúvida de como colocar o texto substituto.
> >
> > pois se colocar um ponto (.) as cordenadas viram apenas .
> >
> > Então eu postei uma dúvida na lista do gedit e 3 minutos depois alguem na
> > lista mandou uma solucao matadora:
> >
> > no campo pesquisar, coloque: (\d\d)\,(\d\d\d\d) e no campo substituir por
> > coloque  \1.\2
> >
> > os parenteses da busca transformam aquele filtro num grupo que pode ser
> > referenciado por \1 o segundo grupo \d\d\d\d seria o \2 da formula.
> >
> > o \d representa um digito de zero a 9 (0 a 9)
> >
> > Caso vc queira que aquele digito seja um numero mais restrito, digo:
> > a cordenada seja entre 20 e 30 vc poderia usar [2-3][0-9]
> >
> > Aqui no meu teste funcionou. acho que vai funcionar ai também.
> >
> >
> >
> > Em 4 de outubro de 2016 16:14, Antonio Silva <aolinto....@gmail.com>
> > escreveu:
> >
> > > Caros Wagner e Adelino, obrigado pela atenção.
> > >
> > > Abraços
> > >
> > > Antônio
> > >
> > > Em 4 de outubro de 2016 12:30, João Adelino da Silva <j...@bsd.com.br>
> > > escreveu:
> > >
> > > > Talvez não seja tão elegante, mas eu faria da seguinte forma (tudo no
> > > Gedit
> > > > mesmo):
> > > >
> > > > INÍCIO => ('12457','-48,2365','-23,3256','ASD')
> > > > LOCALIZAR => ','
> > > > SUBSTITUIR => #
> > > >
> > > > RESULTADO => ('12457#-48,2365#-23,3256#ASD')
> > > > LOCALIZAR => ,
> > > > SUBSTITUIR => .
> > > >
> > > > RESULTADO => ('12457#-48.2365#-23.3256#ASD')
> > > > LOCALIZAR => #
> > > > SUBSTITUIR => ','
> > > >
> > > > RESULTADO FINAL => ('12457','-48.2365','-23.3256#ASD')
> > > >
> > > > João Adelino da Silva
> > > > +55 48 9682 9147
> > > >
> > > > Em 4 de outubro de 2016 11:43, Wagner De Queiroz <
> > > > wagnerdequei...@gmail.com>
> > > > escreveu:
> > > >
> > > > > No Gedit existe uma extensão que permite que voce use regex.
> > > > >
> > > > > http://askubuntu.com/questions/671745/gedit-search-
> > > > > and-replace-with-regular-expressions
> > > > >
> > > > > eu não me atentei a isso, pois aqui nem sempre o gedit aceita
> minhas
> > > > regras
> > > > > de regex.
> > > > >
> > > > > Em 4 de outubro de 2016 11:39, Antonio Silva <
> aolinto....@gmail.com>
> > > > > escreveu:
> > > > >
> > > > > > Olá,
> > > > > >
> > > > > > Apenas para dar um retorno, por ora resolvi a questão fazendo no
> > > gedit
> > > > > > vários localizar/substituir mesmo.
> > > > > >
> > > > > > Como tratam-se de dados de lat/lon fui fazendo do por grau: -24,
> > para
> > > > > -24.
> > > > > > ... minha faixa era de 20 a 30°S / 40 a 49°W. Com 21
> > > > localizar/substituir
> > > > > > resolvi o problema.
> > > > > >
> > > > > > Mas se alguém souber uma maneira mais elegante de fazer este
> > > trabalho,
> > > > > por
> > > > > > favor avise.
> > > > > >
> > > > > > Abraços
> > > > > >
> > > > > > Antônio
> > > > > >
> > > > > > Em 4 de outubro de 2016 11:14, Antonio Silva <
> > aolinto....@gmail.com>
> > > > > > escreveu:
> > > > > >
> > > > > > > Olá Wagner, obrigado pelas dicas.
> > > > > > >
> > > > > > > É um arquivo com script SQL gerado pelo programa shp2pgsql que
> > > > > transforma
> > > > > > > um shapefile em um código SQL para importação no Postgres.
> > > > > > >
> > > > > > > Entre as linhas com o padrão que indiquei existem outras com
> SQL,
> > > aí
> > > > a
> > > > > > > solução do Calc não daria certo.
> > > > > > >
> > > > > > > Também não entendo nada de python, vou ler mais sobre o sed.
> > > > > > >
> > > > > > > Adoraria poder apenas falar: computador localize '-**,****' e
> > > > substitua
> > > > > > > por '-**.****'.  O capt. Kirk não devia ter estes problemas,
> já o
> > > > capt.
> > > > > > Tux
> > > > > > > ... ;-))
> > > > > > >
> > > > > > > Valeu, abraços!
> > > > > > >
> > > > > > > Antônio
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > Em 4 de outubro de 2016 09:49, Wagner De Queiroz <
> > > > > > > wagnerdequei...@gmail.com> escreveu:
> > > > > > >
> > > > > > >> eu tenho duas sugestões:
> > > > > > >>
> > > > > > >> 1. Isso tem cheiro de um arquivo CSV que pode ser aberto pelo
> > > > > > libreoffice.
> > > > > > >> Importe o arquivo lá, dizendo para separar com virgula e texto
> > > entre
> > > > > > aspas
> > > > > > >> simples. Como todos os campos estão entre aspas simples, vc
> terá
> > > > > sempre
> > > > > > >> nas
> > > > > > >> mesmas colunas os números com vírgula que devem ser importados
> > > como
> > > > > > texto
> > > > > > >> (o que é bom) Selecione uma coluna de cada vez, copie o texto
> e
> > > abra
> > > > > no
> > > > > > >> gedit e troque virgula por ponto e cole de volta no
> libreoffice.
> > > > > salve o
> > > > > > >> csv e seja feliz.
> > > > > > >>
> > > > > > >> a Segunda opção é voce criar um script python e fazer a
> > > substituicao
> > > > > > linha
> > > > > > >> a linha, o python tem libs para csv. eu sei que é possível,
> mas
> > eu
> > > > > > levaria
> > > > > > >> um bom tempo para fazer isso pois não sou bom de python.
> > > > > > >>
> > > > > > >> A terceira opção é usar o sed.
> > > > > > >>
> > > > > > >> http://aurelio.net/sed/sed-dicas.txt
> > > > > > >>
> > > > > > >> Veja o exemplo abaixo:
> > > > > > >>
> > > > > > >> # pegando apenas cadeias que estão dentro de parênteses
> > > > > > >>
> > > > > > >> echo 'windows (linux)(Linux), mac (unix) os/2' |
> > > > > > >> sed -n 's/[^(]*\(([^)]*)\)[^(]*/\1/gp'
> > > > > > >>
> > > > > > >> resultado:
> > > > > > >> (linux)(Linux)(unix)
> > > > > > >>
> > > > > > >>
> > > > > > >> Pode notar que
> > > > > > >> se pode adaptar para pegar as cadeias dentro as aspas simples
> e
> > > > depois
> > > > > > >> disso vc pode usar o s para substituir dentro as aspas a
> virgula
> > > > pelo
> > > > > > >> ponto. Não sou bom de sed para opinar melhor, mas acho que uma
> > > > destas
> > > > > > três
> > > > > > >> soluções deverá resolver seu problema.
> > > > > > >>
> > > > > > >> Em 4 de outubro de 2016 09:29, Antonio Silva <
> > > aolinto....@gmail.com
> > > > >
> > > > > > >> escreveu:
> > > > > > >>
> > > > > > >> > Caros
> > > > > > >> >
> > > > > > >> > Texto um arquivo texto enorme que foi gerado com um problema
> > de
> > > > > > pontos e
> > > > > > >> > vírgulas.
> > > > > > >> >
> > > > > > >> > Onde deveriam ser pontos decimais existem vírgulas
> decimais. O
> > > > > formato
> > > > > > >> da
> > > > > > >> > linha (são milhares) é assim :
> > > > > > >> >
> > > > > > >> > ('12457','-48,2365','-23,3256','ASD')
> > > > > > >> >
> > > > > > >> > -48,2365 e -23,3256 deveriam ter pontos.
> > > > > > >> >
> > > > > > >> > Utilizando o gedit ou o Write eu consigo localizar os
> números
> > a
> > > > > serem
> > > > > > >> > modificados com "-..,...." mas não consegui entender como
> > fazer
> > > > para
> > > > > > >> > subsutituir apenas a vírgula que está no conjunto localizado
> > por
> > > > > > ponto.
> > > > > > >> >
> > > > > > >> > Agradeço muito qualquer orientação.
> > > > > > >> >
> > > > > > >> > Abraços
> > > > > > >> >
> > > > > > >> > Antônio Olinto
> > > > > > >> > --
> > > > > > >> > Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/
> > > comece
> > > > > > >> >
> > > > > > >> > Lista de discussão Ubuntu Brasil
> > > > > > >> > Histórico, descadastramento e outras opções:
> > > > > > >> > https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
> > > > > > >> >
> > > > > > >>
> > > > > > >> --
> > > > > > >> Wagner de Queiroz
> > > > > > >> Be free with Linux
> > > > > > >> --
> > > > > > >> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/
> > comece
> > > > > > >>
> > > > > > >> Lista de discussão Ubuntu Brasil
> > > > > > >> Histórico, descadastramento e outras opções:
> > > > > > >> https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
> > > > > > >>
> > > > > > >
> > > > > > >
> > > > > > --
> > > > > > Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/
> comece
> > > > > >
> > > > > > Lista de discussão Ubuntu Brasil
> > > > > > Histórico, descadastramento e outras opções:
> > > > > > https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Wagner de Queiroz
> > > > > Be free with Linux
> > > > > --
> > > > > Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
> > > > >
> > > > > Lista de discussão Ubuntu Brasil
> > > > > Histórico, descadastramento e outras opções:
> > > > > https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
> > > > >
> > > >
> > > --
> > > Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
> > >
> > > Lista de discussão Ubuntu Brasil
> > > Histórico, descadastramento e outras opções:
> > > https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
> > >
> >
> >
> >
> > --
> > Wagner de Queiroz
> > Be free with Linux
> > --
> > Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
> >
> > Lista de discussão Ubuntu Brasil
> > Histórico, descadastramento e outras opções:
> > https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
> >
>
>
>
> --
> Antônio Olinto Ávila da Silva
> Biólogo / Oceanógrafo
> Instituto de Pesca (Fisheries Institute)
> São Paulo, Brasil
> --
> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
>
> Lista de discussão Ubuntu Brasil
> Histórico, descadastramento e outras opções:
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
>



-- 
Wagner de Queiroz
Be free with Linux
-- 
Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece

Lista de discussão Ubuntu Brasil
Histórico, descadastramento e outras opções:
https://lists.ubuntu.com/mailman/listinfo/ubuntu-br

Responder a