[HELP] Une REGEX avec exclusion.

Résolu
JukeBoy -  
 JukeBoy -
Bonsoir a tous,
Voilà, habitué a faire des REGEX, cette fois si j'ai un soucis.
Mon code se présente comme ceci :

{
"devices": [ {
"name": "test1",
"params": [ {
"key": "Value",
"value": "Auto(Off)"
}, {
"key": "Choices",
"value": "Auto(Off),Off,On,Auto(On)"
} ],
}, {
"name": "test2",
"params": [ {
"key": "Value",
"value": "Auto(On)"
}, {
"key": "Choices",
"value": "Auto(Off),Off,On,Auto(On)"
} ],
} ]
}


Voilà, j'aimerai que ma REGEX reconnaisse un block complet d'une machine, sans reconnaître le gros block général (devices) ni les blocks plus à l’intérieur (params), auriez vous une piste ?
J'ai du mal a exclure des mots ou ne pas reconnaître les sous ensembles..

Merci d'avance !

2 réponses

  1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour,
    Pourquoi utiliser une regex ???
    Le format que tu nous montres en exemple... c'est simplement du JSON.

    et... PHP... dispose de fonctions comme json_decode
    https://www.php.net/manual/fr/function.json-decode.php

     // converti les données json en array php
     $arrayDesDatas =  json_decode($tesDatas,true); 
    
    //ensuite tu peux manipuler les données comme un array "normal"
     foreach($arrayDesDatas as $R){
       print_r($R);
     }
    

    1
  2. JukeBoy
     
    Ah oui, quand on connait tout c'est quand même vachement plus simple.. Tu me sauves encore la vie, je me penche la dessus, encore merci :) !!
    0