.01
.02
.03
.04
.05
.06
.07
.08
.09
.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
.36
.37
.38
.39
.40
.41
.42
.43
.44
.45
.46
.47
.48
.49
.50
.51
.52
.53
.54
.55
.56
.57
.58
.59
.60
.61
.62
.63
|
|
<?php
/******************************************************************************/
/* */
/* __ ____ */
/* ___ / / ___ / __/__ __ _____________ ___ */
/* / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-< */
/* / .__/_//_/ .__/___/\___/\_,_/_/ \__/\__/___/ */
/* /_/ /_/ */
/* */
/* */
/******************************************************************************/
/* */
/* Titre : Extraire tous les mots d'une phrase */
/* */
/* URL : http://www.phpsources.org/scripts472-PHP.htm */
/* Auteur : poujolrost-mathias */
/* Date édition : 22 Nov 2008 */
/* Website auteur : http://site.mathiaspoujolrost.net/portfolio/ */
/* */
/******************************************************************************/
/* Fonction qui extrait chaque mot d'une chaîne de caractère et compose un array les contenant */
/* Type du paramètre :
$phrase : string
*/
/* Pour l'appel :
Exemple :
<?php
$quelquesmots = extraireMotsDUnePhrase("C'est ma phrase.");
echo "<ul>";
foreach($quelquesmots as $valeur)
{
echo "t<li>$valeur</li>n";
}
echo "</ul>";
// affichera :
// <ul>
// <li>C</li>
// <li>est</li>
// <li>ma</li>
// <li>phrase</li>
// </ul>
?>
*/
function extraireMotsDUnePhrase($phrase)
{
/* caractères que l'on va remplacer (tout ce qui sépare les mots, en fait) */
$aremplacer = array(",",".",";",":","!","?","(",")","[","]","{","}",""","'"," ");
/* ... on va les remplacer par un espace, il n'y aura donc plus dans $phrase que des mots et des espaces */
$enremplacement = " ";
/* on fait le remplacement (comme dit ci-avant), puis on supprime les espaces de début et de fin de chaîne (trim) */
$sansponctuation = trim(str_replace($aremplacer, $enremplacement, $phrase));
/* on coupe la chaîne en fonction d'un séparateur, et chaque élément est une valeur d'un tableau */
$separateur = "[ ]+"; // 1 ou plusieurs espaces
$mots = split($separateur, $sansponctuation);
return $mots;
}
?>
|