How to find the first occurrence of a pattern in a string from some starting position in C

1 Answer

0 votes
#include <stdio.h>
#include <string.h>

int main() {
    char str[] = "abcdefgaaahijklaaaamnopqaaaaarst";
    char pattern[] = "aaa";
    int startPosition = 11; // Starting position to search from
    
    // Find the first occurrence of the pattern starting from the given position
    char *foundPosition = strstr(str + startPosition, pattern);

    if (foundPosition != NULL) {
        printf("Pattern found at position: %ld\n", foundPosition - str);
    } else {
        printf("Pattern not found!\n");
    }

    return 0;
}



/*
run:

Pattern found at position: 15

*/

 



answered Jun 10, 2025 by avibootz
...