[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] deixar a primeira letra de uma palavra maiúscula e o
From: |
Fábio Batista |
Subject: |
Re: [shell-script] deixar a primeira letra de uma palavra maiúscula e o resto minúsculo |
Date: |
Tue, 22 Mar 2005 16:15:47 -0300 |
[fabio@elefante testes]$ echo "JOAO DA SILVA" | sed -r
's/\b(\w)(\w*)\b/\U\1\L\2/g'
Joao Da Silva
Explicando:
Captura:
1. os \b ao redor da expressão exigem que sejam casadas "word
boundaries" no início e no fim da expressão. Assim garantimos que
pegaremos sempre palavras inteiras.
2. o primeiro grupo - (\w) - seleciona a primeira da nossa palavra
3. o segundo grupo - (\w*) - seleciona o restante da nossa palavra, se houver.
Substituição:
1. o \U pede que o que for escrito de agora em diante seja convertido
para MAIÚSCULAS;
2. mandamos escrever o resultado do primeiro grupo - a primeira letra
da palavra;
3. o \L pede que o que for escrito de agora em diante seja convertido
para MINÚSCULAS;
4. mandamos estrever o resultado do segundo gruopo - o restante da palavra
Pronto.
As partes do texto que não casam com a expressão - símbolos, números,
espaços, etc - se mantém, não são alterados.
Fábio David Batista
address@hidden
http://nerd-o-matic.blogspot.com
On Tue, 22 Mar 2005 15:56:38 -0000, cleiton_schulz <address@hidden> wrote:
>
> opa, não sei se da pra fazer um esquema com o tr e o sed para deixar
> as palavras com apenas a primeira letra maiúscula
>
> por exemplo.
>
> ./converter.sh TESTE
>
> Teste
>
> valeu,
>
> Cleiton