1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
$phrase = 'Aaron prit pour femme Élischéba, fille d\'Amminadab, soeur de Nachschon; et elle lui enfanta Nadab, Abihu, Éléazar et Ithamar.';
$mot = 'Eléazar';
$a = txt2reg($mot, 0, 0); // transfo du mot à chercher en expression régulière
$get = get($a, $phrase, 'tt'); // marquage des termes dans la phrase à scanner
echo $mot.' -> '.$a.' =>> '.$get; // écriture du résultat
function txt2reg($word, $casse, $mot_cplt){
$word = str_replace('/', '', $word);
$word = str_replace('\\', '', $word);
$search = array ("'[AÀÁÂÃÄ]'", "'[CÇ]'", "'[EÈÉÊË]'", "'[IÌÍÎÏ]'", "'[NÑ]'", "'[OÒÓÔÕÖ]'", "'[UÙÚÛÜ]'", "'[aàáâãä]'", "'[cç]'", "'[eèéêë]'", "'[iìíîï]'", "'[nñ]'", "'[oòóôõö]'", "'[uùúûü]'");
$replace = array ('[AÀÁÂÃÄ]', '[CÇ]', '[EÈÉÊË]', '[IÌÍÎÏ]', '[NÑ]', '[OÒÓÔÕÖ]', '[UÙÚÛÜ]', '[aàáâãä]', '[cç]', '[eèéêë]', '[iìíîï]', '[nñ]', '[oòóôõö]', '[uùúûü]');
$txt = preg_replace ($search, $replace, $word);
$txt = "($txt)";
if ($mot_cplt == 1) $txt = "\b$txt\b";
$txt = "/$txt/";
if ($casse != 1) $txt = $txt.'i';
return $txt;
}
function get($a, $texte, $bool){
$l1 = $l = strlen($texte);
// encadrer le mot
$texte = preg_replace($a, '<X>$1</X>', $texte);
$l = strlen($texte);
// si on n'a trouvé aucun mot
if ($l == $l1) $texte = 'rien trouvé';
// si on a trouvé des mots, remplacer X par SPAN
else {
$texte = str_replace('<X>', '<SPAN CLASS=q>', $texte);
$texte = str_replace('</X>', '</SPAN>', $texte);
}
return $texte;
} |
Partager