Given a text txt[0..n-1] and a pattern pat[0..m-1], write a function that prints all occurrences of pat[] in txt[]. You may assume that n > m.

Examples:

Input : txt[] = "geeks for geeks" pat[] = "geeks" Output : Pattern found at index 0 Pattern found at index 10 Input : txt[] = "aaaa" pat[] = "aa" Output : Pattern found at index 0 Pattern found at index 1 attern found at index 2

The idea is to use find() in C++ string class.

`// CPP program to print all occurrences of a pattern ` `// in a text ` `#include <bits/stdc++.h> ` `using` `namespace` `std; ` ` ` `void` `printOccurrences(string txt, string pat) ` `{ ` ` ` `int` `found = txt.find(pat); ` ` ` `while` `(found != string::npos) { ` ` ` `cout << ` `"Pattern found at index "` `<< found << endl; ` ` ` `found = txt.find(pat, found + 1); ` ` ` `} ` `} ` ` ` `int` `main() ` `{ ` ` ` `string txt = ` `"aaaa"` `, pat = ` `"aa"` `; ` ` ` `printOccurrences(txt, pat); ` ` ` `return` `0; ` `} ` |

*chevron_right*

*filter_none*

**Output:**

Pattern found at index 0 Pattern found at index 1 Pattern found at index 2

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready.

## Recommended Posts:

- Pattern Searching using Suffix Tree
- Pattern Searching using a Trie of all Suffixes
- Naive algorithm for Pattern Searching
- Optimized Naive Algorithm for Pattern Searching
- Pattern Searching | Set 6 (Efficient Construction of Finite Automata)
- Finite Automata algorithm for Pattern Searching
- Boyer Moore Algorithm for Pattern Searching
- Z algorithm (Linear time pattern searching Algorithm)
- Aho-Corasick Algorithm for Pattern Searching
- Real time optimized KMP Algorithm for Pattern Searching
- Rabin-Karp Algorithm for Pattern Searching
- KMP Algorithm for Pattern Searching
- Searching in a map using std::map functions in C++
- Factorial of Large Number Using boost multiprecision Library
- Generating large Fibonacci numbers using boost library
- Check all the elements in an array are even using library in C++
- Suffix Tree Application 2 - Searching All Patterns
- searching in fork()
- Print pattern using only one loop | Set 1 (Using setw)
- Unordered Sets in C++ Standard Template Library

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.