Bonjour,
je souhaite coder un script qui me permet de fusionner un nombre de tableaux définis ( pour l'instant ) selon la similarité de leur valeur.
Etape 1 : j'ai une liste de base avec différentes phrases de différentes tailles.
Etape 2 : je découpe cette liste en plusieurs tableaux selon le nombre de mots
Etape 3 ... et c'est la que je bloque ... je fusionne les X tableaux selon leur similarité.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 $max = 6; for ($i = 1; $i <= $max; $i++) { ${'n'.$i} = array(); foreach ( $test as $key => $taille ){ $tWord = explode(' ', $taille); $nb = count($tWord); if ($nb == $i){ ${'n'.$i}[] = $taille; unset($test[$key]); } } }
J'arrive à fusionner 2 tableau ( le 1 avec le 2, le 3, avec le 4, etc ... ) mais pas tous les compiler
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 $max = 6; for ($i = 1; $i <= $max; $i++) { $ip = $i + 1 ; foreach (${'n'.$i} as $key => $nivsupp) { foreach (${'n'.$ip} as $key2 => $nivinff) { $pos1 = stripos($nivinff, $nivsupp); if ($pos1 !== false) { ${'n'.$i}[$nivsupp][] = $nivinff; unset (${'n'.$ip}[$key2]); unset(${'n'.$i}[$key]); } } } }
Exemple d'utilisation
Je voudrais que le script me retourne :Bonjour
bonjour toi
bonjour toi, comment tu t'appel
Salut
Salut sacha
Salut sacha ça va ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part array('Bonjour' => array( "bonjour toi")=> array( "bonjour toi, comment tu t'appel") , 'Salut' => array("Salut sacha")=> array( "Salut sacha ça va ?") );
Merci pour votre aide
Partager