|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 453
|
Confronto stringhe in c....like?
Ciao a tutti devo realizzare una ricerca in c per nome.
Questa ricerca pero' vorrei realizzarla del tipo che cercando ad esempio rosso vengano visualizzate le parole che gli assomigliano, ad esempio non so rotto. Ovvero vorrei che vengano pescate dalla lista contenuta ad esempio in un vettore anche le parole che gli assomigliano che magari iniziano allo stesso modo... Un po come si fa in una query Sql con like e %%... Si puo' fare? Esiste una funzione apposta? Ciao. |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Un'altra cosa è poter usare dei caratteri "wildcard" come ad esempio in ro??o oppure r*o. E un'altra cosa ancora è usare algoritmi più complessi come il noto Soundex.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 453
|
Facendola semplice se volessi confrontare i primi tre caratteri?
Come la uso la strncmp? Ciao. |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Codice:
char *s1 = "pineta"; char *s2 = "pinna"; int r; r = strncmp (s1, s2, 3);
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 453
|
Ho visto che strncmp è case sensitive....
Ne esiste una variante non case sensitive? Grazie. |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
A livello di funzioni standard ANSI C, no non ci sono funzioni per fare la comparazione di stringhe in modo case insensitive ed eventualmente al max di n caratteri.
Ci possono però essere delle funzioni specifiche di un certo compilatore/ambiente. Dimmi il tuo compilatore e vediamo.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 453
|
Io uso dev c++ però se può essere semplice potrebbe bastarmi una funzione che converte tutte le stringhe in maiuscolo...cosi' mi levo il problema inserendo tutto in maiuscolo...
Ciao e grazie di nuovo. |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 453
|
Grazie!
Sei un genio! Ciao. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:39.