shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Re: Maiúscula e minúscula


From: Julio C. Neves
Subject: Re: [shell-script] Re: Maiúscula e minúscula
Date: Wed, 28 Jul 2010 16:31:26 -0300

Fala Cesar,
o que fiz foi trocar o [a-z]+, isto é pelo menos uma minúscula, por
[a-z]{3,}, isto é, pelo menos 3 minusúsculas. A linha fiaca assim:

$ sed -r 's/\b[a-z]{3,}/\u&/g' <<< "coordenacao de analise e instrucao de
processos"
Coordenacao de Analise e Instrucao de Processos

Abraços,
Julio
Cursos de Shell e Zenity em 2 fins de semana?
- SE turma de Shell/Zenity em 13/09 - address@hidden
- SP turma de Shell em 14/08 - www.4Linux.com.br
- Turmas fechadas em outras cidades ligue (21)8112-9988.


Em 28 de julho de 2010 15:33, César Vianna <address@hidden>escreveu:

>
>
> Resgatando a dificuldade já tratada...
> O problema original era alterar nomes compostos em minúsculo, deixando a
> primeira letra em maiúsculo.
> Agora surgiu a seguinte variação:
>
> :~$ echo "coordenacao de analise e instrucao de processos" | sed -r
> 's/\b[a-z]+/\u&/g'
> Coordenacao De Analise E Instrucao De Processos
>
> O problema é que o "De" e o "E" precisariam estar em minúscula.
>
> Uma solução é no sed acima não considerar palavras com 1 ou 2 letras...
>
> Mas, não consegui fazer essa alteração.
>
> 2008/4/4 Flavio Junior <address@hidden <billpp%40gmail.com>>
>
> > Um pouco mais simples, ainda com sed:
> >
> > $ cat xyz | sed -r 's/\b[a-z]+/\u&/g'
> > Alfredo Morto
> > Alberto Roberto
> > Macaco Malandro Balh Ble
> > Tatu Preguicoso
> > Prego Batido
> > Urangotango Chines
> >
> > \b == border (inicio de linha, espaço, tab ... essas coisa)
> > \u == uppercase
> > & == a regex que foi casada no primeiro campo...
> >
> > Ou seja:
> > Case border+letra minuscula, imprima em uppercase o que foi casado.
> >
> > Sorte,
> >
> > Flávio do Carmo Junior aka waKKu
> > #bash-br @ irc.freenode.net
> >
> > 2008/4/4 voyeg3r <address@hidden <voyeg3r%40yahoo.com.br><voyeg3r%
> 40yahoo.com.br>>:
> >
> > >
> > >
> > >
> > >
> > >
> > >
> > > Só para constar. A mesma solução usando o vim, para casos em que
> > > você só tenha o vim seria assim:
> > >
> > > # abrir todos os arquivos
> > > vim *.txt
> > >
> > > # disparar o comando bufdo
> > >
> > > :bufdo :%s/^./\U&/g | :wall
> > >
> > > # dar alguns enteres confirmando e finalmente digitar
> > > :qall
> > >
> > > --- Em address@hidden<shell-script%40yahoogrupos.com.br>
> <shell-script%40yahoogrupos.com.br>,
> > "Ivan lopes"
> > > <lopesivan.del@...> escreveu
> > > >
> > > > cat xyz | sed 's/\(^\)\?\([^ ]*\)/\u&/g'
> > > > Alfredo
> > > > Alberto
> > > > Macaco
> > > > Tatu
> > > > Prego
> > > > Urangotango
> > > > Cesar Eduardo Motta Vianna
> > > >
> > >
> > >
> >
> >
>
> --
> César Vianna
> -------------------
> Prefira o que é positivo e múltiplo; a diferença à uniformidade; o fluxo às
> unidades; os agenciamentos móveis aos sistemas.
> Gilles Deleuze & Felix Guattari
> ******************************************************
> FISL11 - Forum Internacional Software Livre
> Intl. Free Software Forum - http://www.fisl.org.br/
> 21~24::Julho||July::2010 - Porto Alegre - Brasil
> ******************************************************
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]