Encontrar caractere minúsculo em maiúscula

0

Estou tentando alterar a formatação de alguns caracteres específicos que aparecem em letras minúsculas, enquanto a palavra inteira é formatada em maiúsculas.

arquivo se parece com:

„АРХЕОЛОшКИ ПРЕГЛЕД (АРХЕОЛОшКИ ПРЕГЛЕД)“ - годишен информатор на Археолошкото друштво на Југославија, односно на Сојузот на археолошките друштва на Југославија. Содржи прелиминарни соопштенија од археолошки истражувања вршени на територијата на некогашна СФРЈ, подредени според 

usando regex simples e bloco de notas quando eu tentei usar o regex А-Ш sempre seleciona dois caracteres insead apenas ш? alguma ajuda?

obrigado

    
por See Inside 360 18.08.2018 / 21:04

2 respostas

0

Tente o seguinte para obter caracteres minúsculos em letras maiúsculas:

 cat file | tr ' ' '\n' | grep -o '[[:upper:]].*[[:upper:]]' | grep -o '[[:lower:]]'
  • podemos usar tr para dividir cada palavra em uma linha separada.
  • grep -o '[[:upper:]].*[[:upper:]]'' , que irá formar a palavra que começa e termina com maiúsculas.
  • grep -o '[[:lower:]]' , que irá grep apenas em minúsculas.

Saída que recebi do seu contexto

ш
ш
    
por 18.08.2018 / 21:22
0

Com o GNU sed

sed 's/[[:alpha:]]*[[:upper:]][[:alpha:]]*[[:upper:]][[:alpha:]]*/\U&/g'

Transformaria maiúsculas em todas as sequências de letras que continham pelo menos duas maiúsculas.

Portanto, altere АРХЕОЛОшКИ para АРХЕОЛОШКИ , mas deixe Југославија como está.

    
por 18.08.2018 / 22:05