]*\s+href=["\'])' .
+ '(?:' . $url['scheme'] . '://' . $url['host'] . ')?' .
+ $url['path'] . '([^"\']*)@ims';
+ $page = preg_replace($re,'\\1\\2', $page);
+
+ preg_match_all(_SECTIONS_AIDE, $page, $sections, PREG_SET_ORDER);
+ // Fusionner les aides ayant meme nom de section
+ $vus = array();
+ foreach ($sections as $section) {
+ list($tout,$prof, $sujet,) = $section;
+ if (in_array($sujet, $vus)) continue;
+ $corps = aide_section($sujet, $page, $prof);
+ foreach ($contenu as $k => $s) {
+ if ($sujet == $k) {
+ // Section deja vue qu'il faut completer
+ // Si le complement a des sous-sections,
+ // ne pas en tenir compte quand on les rencontrera
+ // lors des prochains passages dans la boucle
+ preg_match_all(_SECTIONS_AIDE, $corps, $s, PREG_PATTERN_ORDER);
+ if ($s) {$vus = array_merge($vus, $s[2]);}
+ $contenu[$k] .= $corps;
+ $corps = '';
+ break;
+ }
+ }
+ // Si totalement nouveau, inserer le titre
+ // mais pas le corps s'il contient des sous-sections:
+ // elles vont venir dans les passages suivants
+ if ($corps) {
+ $corps = aide_section($sujet, $page);
+ $contenu[$sujet] = $tout . "\n" . $corps;
+ }
+ }
+ }
+
+ $contenu = '' . join('',$contenu) . '
';
+
+ // Renvoyer les liens vraiment externes dans une autre fenetre
+ $contenu = preg_replace('@