Bonjour,

j'ai le script suivant :
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
16
17
18
19
20
21
<?
$content = '
AA
{#IF MENU=1}
  BB
  {#IF TEST=1}
    CC
  {#ENDIF}
  EE
{#ELSE}
      FF
{#ENDIF}';
 
  if ( preg_match('`\{#IF([[:space:]]+)([a-z0-9]*)([[:space:]]*)([<>=])([[:space:]]*)([a-z0-9]*)\}(.*){#ENDIF}`isU', $content, $matches/*, PREG_OFFSET_CAPTURE*/) ) {
    echo '<pre>';
    echo htmlentities(print_r($matches, true));
    die;
  }
  echo 'not found';
  die;
?>
Mon but est d'obtenir le block if / endif central (celui contenant "CC"), je ne vois pas quoi mettre dans mon expression à la place du (.*) pour l'exclure.

Malgres le "U", j'obtiens le bloc complet.

Merci de votre aide