Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116

    [vb.net] con linq trovare valori duplicati da un vettore di stringhe

    Dato un vettore di stringhe o una List(Of string), con linq è possibile elencare SOLO i valori ripetuti (duplicati)?

    Pietro

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Prova qualcosa di simile a questo:

    codice:
    Dim data As Int32() = {1, 2, 2, 5, 0, 0}
    
    Dim qry = 
    	From d In data _
    	Group d By d Into Group _
    	Where Group.Count() > 1 _
    	Select d
    La prima istruzione dichiara un vettore di esempio, dove i numeri "2" e "0" sono duplicati.

    Nella seconda istruzione, si raggruppano gli elementi per poterne effettuare il conteggio e si limita la selezione finale in base al fatto che il conteggio di ciascun elemento deve essere maggiore di 1 (quindi si tratta di un elemento duplicato).

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

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    P.S.

    Non sono partito dall'esempio con il vettore di stringhe, ma presumo che l'esempio sia sufficiente per adattare l'espressione anche a quel caso.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    L'esempio che hai mandato è perfetto

    Pietro

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Mi viene da chiedere un'altra cosa (per scopo didatico )

    La sintassi usata è quella tipo sql, ma, se non sbaglio, ne esiste un'altra che fa uso delle funzioni in linea (lambda se non erro). Ecco, mi piacerebbe confrontarle per capirle meglio.
    Ciao
    Pietro

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da pietro09
    La sintassi usata è quella tipo sql, ma, se non sbaglio, ne esiste un'altra che fa uso delle funzioni in linea (lambda se non erro). Ecco, mi piacerebbe confrontarle per capirle meglio.
    Penso sia sufficiente sostituire le istruzioni "simil SQL" con le chiamate ai metodi Select, Where, ecc. ma sarebbe senz'altro molto meno intuitiva rispetto a questa forma.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Concordo. Ringrazio ancora
    Pietro

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 © 2025 vBulletin Solutions, Inc. All rights reserved.