Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    estrapolare varie parti da una stringa

    Buongiorno,
    avrei bisogno di estrapolare varie parti da una stringa.
    codice:
    {"data":{"user":{"edge_followed_by":{"count":502,"page_info":{"has_next_page":true,"end_cursor":"Qx3ZDhzME13cUtLTnpYc20wNXBOUElfSUNMY29FY1lfUnhqSWwwWQ=="},"edges":[{"node":{"id":"2631989","username":"pippo","full_name":"pluto","profile_pic_url":"https://www.pippo.it","is_private":false,"is_verified":false,"followed_by_viewer":false,"requested_by_viewer":false,"reel":{"id":"2631995","expiring_at":1600214,"has_pride_media":false,"latest_reel_media":160893,"seen":null,"owner":{"__typename":"GraphUser","id":"263195","profile_pic_url":"https://www.pippo.it","username":"qwerty"}}}},{"node":{"id":"7097"username":"qwerty","full_name":"sasasasas,"profile_pic_url":"https://www.pippo.it","is_private":false,"is_verified":false,"followed_by_viewer":false,"requested_by_viewer":false,"reel":{"id":"70975,"expiring_at":1609214,"has_pride_media":false,"latest_reel_media":0,"seen":null,"owner":{"__typename":"GraphUser","id":"709757","profile_pic_url":"www.pippo.it","username":"cane"}}}},{"node":{"count":0,"edges":[]}}},"status":"ok"}
    in pratica nella striga sopra riportata ho la necessita di recuperare i vari nomi che si trovano tra apici dopo la parola username.

    un idea da dove iniziare GRAZIE
    Carpe diem
    Preferisco tentare che rinunziare

  2. #2
    Utente di HTML.it L'avatar di patel
    Registrato dal
    Jan 2008
    Messaggi
    1,987
    spiega meglio, quali sono le parole da estrapolare nella stringa che hai mostrato ?

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    23,832
    Quote Originariamente inviata da marco1970 Visualizza il messaggio
    un idea da dove iniziare GRAZIE
    Trattandosi di una stringa in formato JSON, farei uso della libreria JSON.NET, senza indugio.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Homepage | Blog | Delphi Podcast | Altri link...

  4. #4
    Quote Originariamente inviata da alka Visualizza il messaggio
    Trattandosi di una stringa in formato JSON, farei uso della libreria JSON.NET, senza indugio.

    Ciao!
    perfetto in effetti un risultato di JSON. Ho scaricato ed installato mi potresti dare solo imput di come iniziare? NON voglio la pappa pronta. Grazie cmq per la dritta
    Carpe diem
    Preferisco tentare che rinunziare

  5. #5
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    23,832
    Quote Originariamente inviata da marco1970 Visualizza il messaggio
    mi potresti dare solo imput di come iniziare?
    Nella mia risposta c' il link al sito che contiene tutta la documentazione e anche degli esempi di codice per diversi scenari di base.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Homepage | Blog | Delphi Podcast | Altri link...

  6. #6
    Quote Originariamente inviata da alka Visualizza il messaggio
    Nella mia risposta c' il link al sito che contiene tutta la documentazione e anche degli esempi di codice per diversi scenari di base.

    Ciao!
    In primis Grazie!

    Dal sito ho preso spunto da questo
    codice:
    string json = @"{'  'Name': 'Bad Boys',
    '  'ReleaseDate': '1995-4-7T00:00:00',
    '  'Genres': [
    '    'Action',
    '    'Comedy'
    '  ]
    '}";
    
    
    'Movie m = JsonConvert.DeserializeObject < Movie > (json);
    
    
    'String name = m.Name;
    '// Bad Boys
    modificandolo in
    codice:
    Dim json = "{'Name': 'Bad Boys',  'ReleaseDate': '1995-4-7T00:00:00',  'Genres':['Action','Comedy' ]}"
    
            Movie m = JsonConvert.DeserializeObject(json)
    
    
            Dim Name1 = m.Name
            MsgBox(Name1)
    poi ho aggiunto un modulo classe
    codice:
    Public Name  { Get, Set }
    ma qui dovrei correggerlo e non mi chiaro come....

    ovviamente nel modulo di avvio mi da errore nella riga MOVIE
    Carpe diem
    Preferisco tentare che rinunziare

  7. #7
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    23,832
    Quote Originariamente inviata da marco1970 Visualizza il messaggio
    ma qui dovrei correggerlo e non mi chiaro come....
    [...]
    ovviamente nel modulo di avvio mi da errore nella riga MOVIE
    Qual l'errore che ottieni? Qual il codice reale?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Homepage | Blog | Delphi Podcast | Altri link...

  8. #8
    Quote Originariamente inviata da alka Visualizza il messaggio
    Qual l'errore che ottieni? Qual il codice reale?
    ERRORI
    codice:
    Gravit    Codice    Descrizione    Progetto    File    Riga    Stato eliminazioneErrore    BC30451    'm' non  dichiarato. Potrebbe essere inaccessibile a causa del livello di protezione.    prova    C:\Users\Marco\Desktop\prova\prova\prova\Form1.vb    88    Attivo
    Errore    BC30800    Gli argomenti del metodo devono essere racchiusi tra parentesi.    prova    C:\Users\Marco\Desktop\prova\prova\prova\Form1.vb    86    Attivo
    Errore    BC30109    'Movie'  un tipo classe e non pu essere usato come espressione.    prova    C:\Users\Marco\Desktop\iprova\prova\prova\Form1.vb    86    Attivo
    Errore    BC30451    'm' non  dichiarato. Potrebbe essere inaccessibile a causa del livello di protezione.    prova    C:\Users\Marco\Desktop\prova\prova\prova\Form1.vb    86    Attivo
    Errore    BC30205     prevista la fine dell'istruzione.    prova    C:\Users\Marco\Desktop\iprova\prova\prova\Class1.vb    2    Attivo
    credo che nella classe non ci vadano le parentesi graffe e per questo va in errore la riga Movie nel form1

    il codice quello postato sopra poche righe tanto per capire e poi applicarlo al mio progetto
    Carpe diem
    Preferisco tentare che rinunziare

  9. #9
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    23,832
    Quote Originariamente inviata da marco1970 Visualizza il messaggio
    ERRORI
    Sono errori di compilazione. Hai preso un esempio C# mentre tu stai usando VB.NET: devi usare ovviamente l'esempio nel linguaggio che usi tu oppure tradurlo se necessario, sapendo che cosa sta effettivamente avvenendo nel codice che osservi.

    Non puoi fare copia/incolla passivamente del codice e poi andare a tentativi sperando che tutto funzioni senza problemi.

    Quote Originariamente inviata da marco1970 Visualizza il messaggio
    il codice quello postato sopra poche righe tanto per capire e poi applicarlo al mio progetto
    Manca il codice della TUA classe: se posti errori di compilazione e come riferimento riporti il codice corretto da cui hai preso esempio, senza mettere il tuo che probabilmente sbagliato, non ce la faremo mai.

    Cancella tutto, tira un sospiro, riparti da zero con un minimo di logica nell'analisi degli esempi e della documentazione e inizia a scrivere il codice passo passo verificando ci che scrivi.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Homepage | Blog | Delphi Podcast | Altri link...

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    231
    Sicuramente studiarsi ed utilizzare la libreria JSON la soluzione migliore, anche perch poi puoi accedere a tutti gli altri dati della struttura, comunque se devi estrarre solo lo username o anche altri dati ma senza considerare tutta la struttura, puoi anche utilizzare le RegEx, io le uso spesso se devo fare cose semplici e rapide.
    Ad esempio, per il tuo caso:
    codice:
            Dim data = "{""data"":{""user"":{""edge_followed_by"":{""count"":502,""page_info"":{""has_next_page"":true,""end_cursor"":""Qx3ZDhzME13cUtLTnpYc20wNXBOUElfSUNMY29FY1lfUnhqSWwwWQ==""},""edges"":[{""node"":{""id"":""2631989"",""username"":""pippo"",""full_name"":""pluto"",""profile_pic_url"":""https://www.pippo.it"",""is_private"":false,""is_verified"":false,""followed_by_viewer"":false,""requested_by_viewer"":false,""reel"":{""id"":""2631995"",""expiring_at"":1600214,""has_pride_media"":false,""latest_reel_media"":160893,""seen"":null,""owner"":{""__typename"":""GraphUser"",""id"":""263195"",""profile_pic_url"":""https://www.pippo.it"",""username"":""qwerty""}}}},{""node"":{""id"":""7097"",""username"":""qwerty"",""full_name"":""sasasasas,""profile_pic_url"":""https://www.pippo.it"",""is_private"":false,""is_verified"":false,""followed_by_viewer"":false,""requested_by_viewer"":false,""reel"":{""id"":""70975"",""expiring_at"":1609214,""has_pride_media"":false,""latest_reel_media"":0,""seen"":null,""owner"":{""__typename"":""GraphUser"",""id"":""709757"",""profile_pic_url"":""www.pippo.it"",""username"":""cane""}}}},{""node"":{""count"":0,""edges"":[]}}},""status"":""ok""}"
    
            Dim regs = System.Text.RegularExpressions.Regex.Matches(data, """username"":""([^""]*)")
    
            Dim risultato As String = ""
            If regs.Count > 0 Then
                For Each reg As System.Text.RegularExpressions.Match In regs
                    risultato &= reg.Groups(1).Value & Environment.NewLine
                Next
            End If
            MessageBox.Show("Risultato:" & Environment.NewLine & risultato)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2021 vBulletin Solutions, Inc. All rights reserved.