Ciao a tutti, devo parsare una risposta di google OAuth2, il formato del testo che ricevo è simile a questo:
Devo estrarre solo il body scritto in json ovvero:codice:HTTP/1.1 200 OK Cache-Control: no-cache, no-store, max-age=0, must-revalidate Pragma: no-cache Expires: Fri, 01 Jan 1990 00:00:00 GMT Date: Sat, 14 Sep 2013 09:56:20 GMT Content-Type: application/json X-Content-Type-Options: nosniff X-Frame-Options: SAMEORIGIN X-XSS-Protection: 1; mode=block Server: GSE Alternate-Protocol: 443:quic Transfer-Encoding: chunked c4 { "access_token" : "ya29.AHES6ZSLbAFmae89RRvWJCiFhXbuNkaKwvxTWyOCuQgeZ2k", "token_type" : "Bearer", "expires_in" : 3600, "refresh_token" : "1/DI34dieiTUTKLdstMFDwfeywklpg-_KrhgCWK0v0xFI" }
Stavo pensando di utilizzare un lookaround come (?<=) sulla break line, la parte che separa gli headers dal body del messaggio, e poi da li fare qualcosa tipo /({(\"{1}[A-Z_]+"{1}[ :]{1,3}"{1}[A-Z0-9.]+"{1},?)+)/imcodice:{ "access_token" : "ya29.AHES6ZSLbAFmae89RRvWJCiFhXbuNkaKwvxTWyOCuQgeZ4k", "token_type" : "Bearer", "expires_in" : 3600, "refresh_token" : "1/DI34diaeTUTKLdstMFDwfeywklpg-_KrhgCWK0v0xFI" }
il problema è che non so come gestire il testo multiline, c'è qualcuno che ha la pazienza di aiutarmi, magari aiutandomi a costruire una regex decente?
Per fare delle prove online consiglio http://www.gskinner.com/RegExr/
Tanto per la precisione sto usando C# ma non credo conti molto per il mio problema

Rispondi quotando