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