est-il possible de diviser la chaîne suivante en utilisant des expressions régulières?

StackOverflow https://stackoverflow.com/questions/4122357

  •  29-09-2019
  •  | 
  •  

Question

suppose que j'ai une chaîne:

QString str={time:123,age:{aaa:123,bbb:456},address:aaa,hight:{zzz:111,ccc:{rrr:333,uuu:555},xxx:222}};  

est-il possible en utilisant l'expression régulière de le diviser à

str.split(QRegExp(???))  

==>

    time:123  
    age:{aaa:123,bbb:456}  
    address:aaa  
    hight:{zzz:111,ccc:{rrr:333,uuu:555},xxx:222}  

Merci

Était-ce utile?

La solution

est-il JSON? Dans ce cas, utilisez un analyseur de JSON.

En général, utiliser un analyseur approprié pour la langue. Cela ne peut pas être résolu correctement avec des expressions régulières.

Autres conseils

Vous essayez de faire correspondre les niveaux d'imbrication, ce qui est une langue régulière (et donc des expressions régulières ne peut pas correspondre).

Il ne devrait pas être trop difficile d'écrire un analyseur non-regex simpliste pour cela, cependant.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top