Prima di tutto, usa il tag CODE. Capisco che a fare copia e incolla si fa prima, ma ti assicuro che se ti prendi 30 minuti per scrivere un post come come si deve le risposte ci saranno e saranno anche utili e tempestive. Ad un post scritto male passa la voglia di rispondere, soprattutto se è il post di un nuovo utente, con solo un messaggio sul forum e che puntualmente sparirà ad esercizio risolto. Questo rant non è diretto a te in particolare, ma un po' a tutti quanti.
Dimenticati strstr, è un esercizio didattico che si può tranquillamente risolvere senza usare la libreria standard. Visto che sei bloccata, per adesso dimenticati i metacaratteri composti da più di un carattere (\a, \A, [] e [^]). Inizia a risolverlo per espressioni formate da caratteri alfabetici e il punto. Il primo suggerimento che mi sento di darti è di usare due funzioni: cercaRegex per cercare il pattern all'interno della stringa e match (o come ti pare) per controllare (true o false) se la regex appare all'inizio della stringa. La prima richiamerà la seconda funzione per ogni possibile suffisso: prima parte dall'inizio, poi salta il primo carattere, poi salta il secondo, e così via fino all'ultimo.
Se non riesci a fare nemmeno la versione semplificata che ti ho proposto, inizia semplicemente a scrivere che cerca una stringa (soli caratteri alfabetici) all'interno di un altra stringa senza usare strstr o altre funzioni di libreria. Posta le tue soluzioni parziali che poi ti spiego io come modificarle per fare gli step successivi.
Il testo dell'esercizio mi sembra chiaro e ben esposto. È un esercizio storico e capisco che di primo impatto possa un po' intimorire visto che non è semplice semplice, però leggendo il testo a me sembra tutto chiaro. Cosa ti sfugge?Ma credo io non abbia proprio capito concettualmente cosa voglia il programma.
L'esercizio non è banale, ma non è lungo e per chi è capace non è nemmeno particolarmente tosto. Se ti abbozzo qualche riga di codice va a finire che ti risolvo la parte facile e ti faccio affrontare la parte difficile, è un compromesso poco sensato. Facciamo che provo a guidarti verso la soluzione e mal che vada aggiungo io i pezzi un po' più difficili.Ho cercato di risolverlo con dei costrutti if-else e poi la strstr, ma la funzione mi ritorna sempre NULL. Sto letteralmente impazzendo!
Qualcuno saprebbe abbozzarmi qualche riga di codice?
Dimenticati strstr, è un esercizio didattico che si può tranquillamente risolvere senza usare la libreria standard. Visto che sei bloccata, per adesso dimenticati i metacaratteri composti da più di un carattere (\a, \A, [] e [^]). Inizia a risolverlo per espressioni formate da caratteri alfabetici e il punto. Il primo suggerimento che mi sento di darti è di usare due funzioni: cercaRegex per cercare il pattern all'interno della stringa e match (o come ti pare) per controllare (true o false) se la regex appare all'inizio della stringa. La prima richiamerà la seconda funzione per ogni possibile suffisso: prima parte dall'inizio, poi salta il primo carattere, poi salta il secondo, e così via fino all'ultimo.
Se non riesci a fare nemmeno la versione semplificata che ti ho proposto, inizia semplicemente a scrivere che cerca una stringa (soli caratteri alfabetici) all'interno di un altra stringa senza usare strstr o altre funzioni di libreria. Posta le tue soluzioni parziali che poi ti spiego io come modificarle per fare gli step successivi.