Pergunta

Eu preciso de um script Perl que leva números como exemplo de entrada 222 e deve ser lançado como 222.

Foi útil?

Solução

Usar Lingua :: pt :: números - Transforme "407" em "quatrocentos e sete", etc.

use Lingua::EN::Numbers qw(num2en num2en_ordinal);

    my $x = 234;
    my $y = 54;
    print "You have ", num2en($x), " things to do today!\n";
    print "You will stop caring after the ", num2en_ordinal($y), ".\n";

impressões:

You have two hundred and thirty-four things to do today!
You will stop caring after the fifty-fourth.

Se você ler o documentação do módulo, então você descobrirá que o módulo também suporta as seguintes coisas como, como,

  • Pode suportar Inteiros como "12" ou "-3" e numeros reais Como "53.19".
  • Também entende notação exponêncial - transforma "4e9" em "quatro vezes dez para o nono.
  • Ele transforma "inf", "-inf", "nan" em "infinito", "infinito negativo" e "não um número", respectivamente.

Outras dicas

Número :: Feitiço pode ajudá -lo:

use Number::Spell;
my $str = spell_number(222);

Aqui está um:

Descrição: Isso basicamente converte um número em palavras. Ele só pode converter números menores ou iguais à quantidade de novembilion. Possui um processo completo de validação de entrada.

Tentar isto. Do autor ...

Você pode usá -lo livremente e modificá -lo como quiser.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top