Analisar :: Roow.

um analisador extensível
Baixe Agora

Analisar :: Roow. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • Greg London
  • Site do editor:
  • http://search.cpan.org/~gslondon/

Analisar :: Roow. Tag


Analisar :: Roow. Descrição

Um analisador extensível Analisar :: RNAW é um analisador extensível em Perl. Definir gramáticas usando chamadas sub-rotinas. Defina suas próprias extensões gramaticais definindo novas sub-rotinas. Analisar texto em memória ou arquivos ou outros fluxos.synopsisgnaw é um módulo Perl que implementa expressões regulares e gramáticas de análise de texto completo usando nada, mas o código Puro Perl limitado a fechamentos de sub-rotina e variáveis básicas de perl, como escalares, hashes, matrizes, e referências.Você escreve sua gramática em perl puro. Não há "linguagem analisadora" intermediária que seja interpretada em algo executável. Quando você fizer uma "Análise de uso :: Roa", o módulo RNAW irá importar uma série de funções diretamente para o seu namespace. Sim, isso é um formulário completamente ruim para módulos normais. Mas este não é um módulo normal. As sub-rotinas importadas incluem funções regulares de expressão e análise para correspondência, quantificadores, literais, alternações, classes de caracteres e assim por diante. Você constrói sua gramática chamando essas funções. A chamada final retornará uma referência de código. Esta referência de código é sua gramática. Quando você desencadear essa gramática, se é uma função "correspondência", você passa na string que deseja analisar. Use Analise :: Row; # Crie a gramática Minha $ Grammar = Match ('Hello'); # aplique a gramática para uma string se ($ gramática -> ('hello world')) {print " ";} else {Imprimir" Nenhum jogo ";} Você também pode criar a gramática e executá-lo em uma etapa: my $ textParse =" WOWDY Partner "; se (fósforo (« mundo ') -> ($ TextToparse)) {Imprimir " ";} else {imprimir" sem jogo ";} Nota o exemplo acima traduzido para a sintaxe de expressão regular de Perls seria algo assim: Meu $ texttoplarse =" WOWDY Partner "; se ($ texttoparse = {hellos * world}) {hellos * mundial}) {hellos * mundial}) {hellos * ";} else {imprimir" sem jogo ";} Você pode construir gramáticas mais complicadas com bastante facilidade. Este procura uma frase sobre frutas. $ Grammar = jogo (QL (ql (eu gostaria de comprar '), alguns (' A ', qa (' banana maçã pêra pêssego '))); a função "correspondência" procura uma correspondência para a gramática na string sendo analisada. A função "QL" (literal citada) permite que você coloque uma sequência de literais em uma única string. Ele divide o string em literais individuais muito parecido com a função Perls "QW" faz. Então os coloca em uma sequência gramática para você. Isso economiza de colocar citações em torno de cada literal. A função "alguma" é um quantificador procurando "1 ou mais "De qualquer coisa que rodeia, neste caso, uma sequência do literal" A "seguido por uma alternância de diferentes frutas possíveis. A função" QA "(alternância citada) leva uma única string e divide-a em palavras individuais, também perls "qw" função. A função "QA" leva essas palavras individuais e cria uma alternância que tenta combinar qualquer palavra individual na string como um alternativo válido. Requisitos: · Perl.


Analisar :: Roow. Software Relacionado