Texto :: filtro

classe base para objetos que podem ler e escrever linhas de texto
Baixe Agora

Texto :: filtro Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • Johan Vromans
  • Site do editor:
  • http://search.cpan.org/~jv/

Texto :: filtro Tag


Texto :: filtro Descrição

Classe base para objetos que podem ler e escrever linhas de texto objetivo principal do texto :: Filtro é abstrair os detalhes para fora como a entrada e saída deve ser feito. Embora na maioria dos casos de entrada virá de um arquivo e saída serão gravados em um arquivo, módulos avançados requerem controle mais detalhado sobre a entrada e saída. Por exemplo, o módulo pode ser chamado a partir de outro módulo, neste caso, o receptor pode ser deixada processar apenas uma parte da entrada. Ou, um programa poderia ter dados preparados em uma matriz e quer chamar o módulo para processar esses dados como se fosse ler um arquivo. Além disso, o fluxo de entrada fornece uma funcionalidade pushback para fazer espreitar na entrada easy.Text :: filtro pode ser usado em seu próprio como um manipulador de entrada / saída conveniente. Por exemplo: uso Text :: Filtro; my $ filter = Text :: Filtro -> (entrada => * STDIN, saída => * STDOUT); my $ linha; while (definido ($ line = $ filter-> readline)) {$ filter-> WriteLine ($ line); } Ou, ainda mais simples: use Text :: Filtro; Text :: Filter-> run (entrada => * STDIN, saída => * STDOUT); suas mostras de poder real quando esse programa é transformado em um módulo para ótima reuse.When criar um módulo que é linhas de processamento de texto, ele pode ser derivado de Text :: Filtro, por exemplo: pacote MyFilter; usar base 'Text :: Filtro'; O método construtor deve, em seguida, chamar o método new () da classe Text :: Filtro para configurar a classe base. Isto é convenientemente feito chamando SUPER :: new (). Um hash contendo atributos devem ser passados para este método, alguns destes atributos será usado pela configuração da classe base. sub new {my $ classe = turno; # ... buscar argumentos não-atributo de @_ ... # Criar o exemplo, usando os argumentos de atributo. meu $ self = $ aula> SUPER :: new (@_) e, finalmente, o objeto recém-criado deve ser para a classe desejado, e voltou abençoou-re: # Rebless na classe desejada. abençoe ($ self, $ classe); } Ao criar novas instâncias para esta classe, atributos de entrada e saída pode ser usada para especificar como entrada e saída deve ser tratado. Vários valores possíveis podem ser fornecidos para estes entrada attributes.For: * Um escalar, contendo um nome de arquivo. O arquivo chamado será aberta, linhas de entrada será lido usando. * Identificador de arquivo A (glob). Linhas serão lidos usando. * Uma instância de classe IO :: File. Linhas serão lidos usando. * Uma referência a uma matriz. As linhas de entrada será deslocamento () ed a partir da matriz. * Uma referência a um escalar. As linhas de entrada irá ser feita a partir do conteúdo do escalar (que irá ser modificado). Quando exaustos, ele será definido como indefinido. * Uma referência a uma sub-rotina anónimo. Esta rotina será chamada para obter a próxima linha de dados.O padrão é ler a entrada usando de operator.For saída: * Um escalar, contendo um nome de arquivo. O arquivo chamado será criado automaticamente, linhas de saída será escrito usando print (). * Identificador de arquivo A (glob). Linhas serão escritas usando print (). * Uma instância de classe IO :: File. Linhas serão escritas usando print (). * Uma referência a uma matriz. linhas de saída vai ser impulso () ed na matriz. A matriz será inicializado para (), se necessário. * Uma referência a um escalar. linhas de saída vai ser acrescentada ao escalar. O escalar será inicializado com "" se necessário. * Uma referência a uma sub-rotina anónimo. Esta rotina será chamada para acrescentar uma linha de texto para o padrão destino.O é a saída de gravação para atributos STDOUT.Additional pode ser usado para especificar ações a serem executadas após os dados é obtida, ou antes de ser escrito. Por exemplo, para tirar finais de linha após a entrada, e adicioná-los em cima infinidade output.SYNOPSISA de ferramentas existem que atuam como filtros: eles recebem dados de uma fonte, operam sobre esses dados, e escrever possivelmente modificadas dados para um destino. No mundo Unix, estas ferramentas podem ser encadeadas utilizando uma técnica chamada de pipeline, onde a saída de um filtro é ligada à entrada de um outro filtro. Alguns mundos não-Unix são relatados para ter provisions.To semelhante criar módulos Perl para a funcionalidade do filtro parece trivial em primeiro lugar. Basta abrir o arquivo de entrada, ler e processá-lo, e a saída de gravação para um arquivo de destino. Mas para os módulos realmente reutilizáveis esta abordagem é muito simples. Um módulo reutilizável não deve ler e arquivos de gravação de si mesmo, mas contam com o programa de chamada para fornecer a entrada, bem como para lidar com a output.Text :: Filter é uma classe base para os módulos que têm em comum o facto processar linhas de texto através da leitura de alguma fonte (geralmente um arquivo), manipulando o conteúdo e escrever algo de volta para algum destino (geralmente algum outro arquivo) .Este módulo pode ser usado em si mesmo, mas é mais poderoso quando usado para módulos dela derivam. Veja exemplos de seção para uma extensa exemplo. Requisitos: · Perl.


Texto :: filtro Software Relacionado

filtrounit.

permite que os testes unitários sejam criados para programas de linha de comando ...

125

Download