1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Duvida Flex (Gerador de filtros lexicos)

Discussão em 'Programação' iniciada por Fork, 4 de Abril de 2008. (Respostas: 7; Visualizações: 839)

  1. Fork

    Fork What is folding?

    Boas,

    Se alguém já usou esta ferramenta será que me pode ajudar?

    Gostaria de criar uma regra para que so executa-se caso n~so se verifique dada condição.

    Por exemplo:
    Código:
    <condicao1,condicao2, (não) condicao3>  {codigo}
    
    como fazer o não?
     
  2. spastikman

    spastikman Banido

    não percebi muito bem a tua duvida, mas se te referes a condições como sendo as expressões regulares, podes negar determinados padrões ([^a] = não pode conter "a").

    Negar condições por si só é impossível.
     
  3. Fork

    Fork What is folding?

    Embora o Flex tire muito partido das Expressões regulares, as start conditions não são expressões regulares.
     
  4. kidloco

    kidloco Power Member

    Mas porque não fazes isso com um simples if, else if ?
     
  5. Demio

    Demio Power Member

    Com o flex não podes ir lá com a negativa. Já agora, aquilo a que chamas de condições, são na verdade autómatos ou estados, nos quais entras através do yy_push_state(STATE) e yy_pop_state(). Servem para processar certos tipos de informação para os quais simplex REGEX não funcionam.

    Acho que tens de ler mais sobre o flex ;)
     
  6. Fork

    Fork What is folding?

    Toda a literatura que li sobre o Flex trata os estados como start conditions, dai lhes chamar condições. Já resolvi o problema. Usei o estado para o oposto.

    Se usa-se o if ou o else if não estaria a cumprir o objectivo do trabalho.
     
  7. tool

    tool Power Member

    se não me engano,

    [^condição]
     
  8. Fork

    Fork What is folding?

    isso é para numa expressão regular certificar-te que não queres isso, não é isso que procurava.
     

Partilhar esta Página