uspdev / cutter
Retorna o código cutter da string fornecida
This package is auto-updated.
Last update: 2024-10-27 05:20:27 UTC
README
Biblioteca que retorna o código cutter de uma string.
Para saber o que é e para que serve veja https://pt.wikipedia.org/wiki/Tabela_de_Cutter.
Esta biblioteca foi inspirada pelo projeto https://github.com/bcunhasa/gerador-cutter que está escrito em python. Especificamente aproveitei boa parte do método recursivo para encontrar o código.
A tabela utilizada foi retirada do endereço http://203.241.185.12/asd/board/Author/upfile/abcd.htm, visitado em 28/5/2019. Parece ser a mesma tabela publicada em http://conteudo.icmc.usp.br/Portal/Sistemas/Biblioteca/cutter/ e em http://biblioteca.eesc.usp.br/index.php?option=com_content&view=article&id=206&Itemid=375.
Utilização
Essa biblioteca foi testada em Linux Ubuntu 18.04 mas deve funcionar em qualquer sistema sem problemas. Inclusive não requer dependência alguma.
Adicione esta biblioteca ao seu projeto
composer require uspdev/cutter
Exemplo de teste
<?php require 'vendor/autoload.php'; use Uspdev\Cutter; echo Cutter::find('Kawabata, Neto').PHP_EOL;
Teste
Na pasta /test
é feito a busca por alguns nomes e verifica o resultado. Essa lista não é longa hoje mas será aumentada ao longo do tempo. Para rodar o teste digite na linha de comando
php vendor/uspdev/cutter/test/test.php
Se você clonou o projeto no github o caminho para o teste é
php test/test.php
Problemas conhecidos
Esta biblioteca não trata alguns tipos de palavras nem oferece alternativas.
Exemplo1. "le fort, gertrud" deveria ser 494 porém retornou 433. Nesse caso o espaço entre "le" e "fort" deve ser suprimido usando a busca "lefort" que retorna o resultado correto.
Exemplo 2. "krahl" deveria ser 89 porém retornou 91. Como "krahl" não existe, deve-se adotar o imediatamente anterior na ordem alfabética (89-kr, 91-krau)