Celem tego ćwiczenia jest opanowanie mechanizmu wywołania funkcji bibliotecznych systemu Unix, i w tym celu przygotowanie odpowiednich struktur danych, oraz interpretacja wyników.

Zadaniem jest napisanie programu do wyszukiwania w plikach tekstowych napisów pasujących do podanych przez użytkownika wzorców. Wzorce będą wyrażeniami regularnymi, a dopasowanie należy zrealizować przy użyciu funkcji biblioteki regcomp (patrz man regcomp, prezentowanymi na wykładzie. (Więcej informacji na temat wyrażeń regularnych na stronie man -s 5 regex.) Zadaniem będzie rozszerzenie załączonego programu try_regex.c w taki sposób, by znajdował wszystkie dopasowania podanego wyrażenia regularnego (zamiast tylko pierwszego) w pliku tekstowym o nazwie podanej przez użytkownika.

Zatem w podstawowej wersji program powinien zapytać użytkownika o wzorzec, przeczytać go jako string, a następnie otworzyć plik zadany w argumencie wywołania programu (a jeśli go nie będzie to uzyskać nazwę pliku od użytkownika), i w kolejno wczytywanych z pliku wierszach znajdować kolejne dopasowania wzorca i przedstawiać je użytkownikowi w postaci:
wiersz ..., od znaku ... do znaku ...:
i w tym miejscu wyświetlić pełny ciąg znaków z pliku dopasowany do wzorca.

Lepszą wersją realizacji zadania będzie interface użytkownika napisany przy użyciu biblioteki curses ( man curses, patrz przykładowy program try_curses.c), realizujący dialog z użytkownikiem za pomocą wybranych pól na ekranie i przedstawiający kolejne dopasowania wzorca w innym polu, przez wyświetlenie wiersza danych z podświetleniem zakresu znaków dopasowanych do wzorca.