In C, you can perform pattern matching using regular expressions with the `regex.h` library. Here is an example of how to use this library to match a pattern in a string:
```
#include <stdio.h>
#include <regex.h>
int main() {
char str[100] = "The quick brown fox jumps over the lazy dog.";
char pattern[20] = "fox";
regex_t regex;
int reti;
reti = regcomp(®ex, pattern, 0); // Compile the regular expression
if (reti) {
fprintf(stderr, "Could not compile regex\n");
return 1;
}
reti = regexec(®ex, str, 0, NULL, 0); // Execute the regular expression
if (!reti) {
printf("Match found\n");
} else if (reti == REG_NOMATCH) {
printf("No match found\n");
} else {
fprintf(stderr, "Regex match failed\n");
return 1;
}
regfree(®ex); // Free the regular expression structure
return 0;
}
```
In this example, we have a string `str` and a pattern `pattern` that we want to match in the string. We first create a `regex_t` object to store the compiled regular expression. We then use the `regcomp()` function to compile the regular expression from the `pattern` string.
Next, we use the `regexec()` function to execute the regular expression against the `str` string. If the regular expression matches the string, `regexec()` returns 0, and we print a message indicating that a match was found. If the regular expression does not match the string, `regexec()` returns `REG_NOMATCH`, and we print a message indicating that no match was found.
Finally, we free the `regex_t` object using the `regfree()` function.
Note that regular expressions can be complex, and this example only scratches the surface of what is possible with the `regex.h` library. For more information, consult the C documentation and regular expression tutorials.
Silan Software is one of the India's leading provider of offline & online training for Java, Python, AI (Machine Learning, Deep Learning), Data Science, Software Development & many more emerging Technologies.
We provide Academic Training || Industrial Training || Corporate Training || Internship || Java || Python || AI using Python || Data Science etc