<?php
function toUpperCamelCase(string $text): string
{
$replacement = "";
$text = preg_replace("/(\b(de|du|la|le|et)\b)|(\b((l|d)[',’]))/i", '', $text);
$text = delete_all_between('(', ')', $text);
$text = iconv('utf-8', 'us-ascii//TRANSLIT', $text);
$text = ucwords($text);
$text = preg_replace('~[^\pL\d]+~u', $replacement, $text);
$text = trim($text, $replacement);
$text = preg_replace('~-+~', $replacement, $text);
return $text;
}
function delete_all_between(string $beginning, string $end, string $string): string
{
$beginningPos = strpos($string, $beginning);
$endPos = strpos($string, $end);
if ($beginningPos === false || $endPos === false) {
return $string;
}
$textToDelete = substr($string, $beginningPos, ($endPos + strlen($end)) - $beginningPos);
return str_replace($textToDelete, '', $string);
}
echo toUpperCamelCase("Identifiant de l’organisme destinataire de la déclaration néant");
preferences:
45.16 ms | 402 KiB | 5 Q