PplWare Mobile

Dica – Excel e Expressões regulares

                                    
                                

Este artigo tem mais de um ano


Autor: Pedro Pinto


  1. Ricardo Almeida says:

    Excelente dica 🙂 Não conhecia.

    Mas penso que o colar especial nalguns casos também funciona.

  2. Pedro Pinto says:

    Expressões regulares são potentes!!!!

  3. Vítor Moreira says:

    Por acaso, tive necessidade de utilizar expressões regulares na função VLOOKUP mas não consegui.

    Desenvolvi umas macros em VBA (Excel), Perl (gnumeric) e OfficeBasic (LibreOffice) para ter esse comportamento.

    Se alguém souber como se faz VLOOKUPs com regexp, apite! Tudo o que seja para simplificar é bem vindo!

  4. JC says:

    Boa dica e ilustrativa do uso das expressões regulares.
    Neste exemplo é mais fácil selecionar no PDF apenas a coluna pretendida (clicando e arrastando o rato), fazer cópia e depois colar na folha Excel.

  5. Ainda na aula passada o professor da Teoria de Computação falou-nos nisto e usou o exemplo do word e excel. Parece-me que as ER são algo potente.

  6. smonteiro says:

    Eu uso um programa chamado Able2Extract Pro que funciona que é uma maravilha.

  7. Carmi says:

    Isso é que era uma rubrica de excel em paralelo com a do Word, mas eu sei que pedir é facil.
    Bom trabalho, parabens

  8. Pedro A. says:

    Boa!!! Considero-me um utilizador avançado de Excel e não conhecia as expressões regulares…
    Agora um desafio: como é que replicas a mesma pauta em excel, ou seja, como é que voltas a ter os diferentes campos em colunas?

    • Ecchin says:

      Assim de repente… estou a ver uma forma.
      Usas esta forma para te veres livre da coluna do Número e do Nome, e depois usas a ferramenta de conversão de texto para colunas do Excel, usando o espaço como separador. Depois colas uma nova tabela igual a esta, e livras-te de tudo o que vem a seguir ao T maiúsculos, inclusive, ficando apenas com o Nome e o Número. Mais uma vez, usa o Excel para separar em colunas. Vais é ficar com muitas colunas para o nome, que podes unir, não sei como, agora 😀

      • Pedro A. says:

        Agora sei eu 🙂 usas a função concatenate para juntar as várias células necessárias.
        Ex:
        =concatenate(b2;” “;c2;” “;d2)

        A minha maior dificuladade seria a de partir em colunas dado que o nome do aluno tem um conjunto variável de palavras.

  9. RJ99 says:

    Existem serviços e aplicações on-line que dão uma grande ajuda.

    Por exemplo

    http://www.techsupportalert.com/content/best-free-online-applications-and-services.htm#PDF-Tools

  10. Gustavo says:

    isso que foi aplicado no exemplo não se trata de mais nada do que “caracteres coringas” que existem desde as versões de 1980 para MS-DOS que já processam.

    Tal procedimento do Excel “não comporta” expressões regulares, que pela definição de “Expressões regulares” se extende muito mais adiante do que foi apresentado aqui.

  11. KLEIDSON DA SILVA says:

    Quais são esses caracters antes do * (asterisco) e depois do ponto de interrogação(?) ? Não encontrei no teclado.

  12. Marcos Lima says:

    Não se trata exatamente de expressão regular (regex), o * e o ? foram utilizados como caracteres curingas.
    Em regex estes dois caracteres tem significados diferentes.
    Uma expressão regular que identifica trechos antes de Turma seria :

    EXEMPLO 1:
    Reconhece o trecho a ser apagado ou substituído
    .+?(?=Turma)

    EXEMPLO 2:
    Reconhece todo o trecho e considera o trecho começando com Turma como sendo o grupo 1
    ^.+?(Turma.+$)

    EXEMPLO 3:
    Reconhece o trecho que começa com Turma e ignora o trecho anterior a turma
    Turma.+$

    https://rubular.com/r/ZPhpn5TRLiUtp4
    ——————————————————————————————————————————–
    O regex pode ser utilizado em excel, editor de texto como notepad++, pspad ou linguagem de programação.
    Por exemplo python.
    # ————EXEMPLO 1————-
    from re import sub
    txt = ‘Código Nome Turma Nota’
    txt = sub(‘.+?(?=Turma)’, ”, txt)
    # ————EXEMPLO 2————-
    from re import sub
    txt = ‘Código Nome Turma Nota’
    txt = sub(‘^.+?(Turma.+$)’, ‘\\1’, txt)
    # ————EXEMPLO 3————-
    from re import search
    txt = ‘Código Nome Turma Nota’
    txt = search(‘Turma.+$’, txt)

Deixe um comentário

O seu endereço de email não será publicado.

You may use these HTML tags and attributes: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

Aviso: Todo e qualquer texto publicado na internet através deste sistema não reflete, necessariamente, a opinião deste site ou do(s) seu(s) autor(es). Os comentários publicados através deste sistema são de exclusiva e integral responsabilidade e autoria dos leitores que dele fizerem uso. A administração deste site reserva-se, desde já, no direito de excluir comentários e textos que julgar ofensivos, difamatórios, caluniosos, preconceituosos ou de alguma forma prejudiciais a terceiros. Textos de caráter promocional ou inseridos no sistema sem a devida identificação do seu autor (nome completo e endereço válido de email) também poderão ser excluídos.