¿es posible dividir la siguiente cadena usando expresiones regulares?
Pregunta
supongamos que tengo una cadena:
QString str={time:123,age:{aaa:123,bbb:456},address:aaa,hight:{zzz:111,ccc:{rrr:333,uuu:555},xxx:222}};
es posible usando expresión regular para dividir a
str.split(QRegExp(???))
==>
time:123
age:{aaa:123,bbb:456}
address:aaa
hight:{zzz:111,ccc:{rrr:333,uuu:555},xxx:222}
Gracias
Solución
Es JSON? En ese caso, utilice un analizador JSON.
En general, utilice un analizador apropiado para el idioma. Esto no puede ser resuelto correctamente con expresiones regulares.
Otros consejos
Usted está tratando de igualar los niveles de anidación, que no es un lenguaje regular (y por lo tanto las expresiones regulares no puede coincidir con él).
No debería ser demasiado difícil escribir un analizador de expresiones regulares no simplista para esto, sin embargo.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow