Codice PHP:
function plur2sing($stringa) {
$stinga = strtolower($stinga);
$combi=array("be"=>"ba",
"che"=>"ca",
"cchie"=>"cchio",
"ce" => "cia",
"de" => "da",
"fe" => "fa",
"ghe" => "ga",
"glie" => "glia",
"le" => "la",
"me" => "ma",
"ne" => "na",
"pe" => "pa",
"que" => "qua",
"re" => "ra",
"se" => "sa",
"te" => "ta",
"ve" => "va",
"ze" => "za",
"bi" => "bo",
"occhi" => "occhio",
"chi" => "co",
"rci" => "rco",
"vortici"=>"vortice",
"rtici" => "rtico",
"ci" => "cio",
"fedi" => "fede",
"di" => "do",
"fi" => "fo",
"gi" => "go",
"ghi" => "go",
"gli" => "glio",
"armi" => "arme",
"li" => "lo",
"mi" => "mo",
"oni" => "one",
"rni" => "rno",
"treni"=> "treno",
"oni" => "one",
"ini" => "ino",
"eni" => "eno",
"pi" => "po",
"ari" => "are",
"ccessori" => "ccessorio",
"bri" => "bro",
"ri" => "re",
"si" => "so",
"isti" => "ista",
"ti" => "to",
"zi" => "zo",
"ii" => "io",
"erei" => "ereo",
"nei" => "neo",
"ue" => "ua");
$sing_word = $stringa;
foreach ($combi as $plurale=>$singolare)
{
if (substr($stringa,strlen($plurale)*-1) == $plurale) {
$sing_word = substr($stringa,0,strlen($stringa)-strlen($plurale)).$singolare;
break;
}
}
return $sing_word;
}
logicamente, si può scambiare il tutto ed ottenere il plurale dal singolare.