Find and replace in project
You can search for occurrences and usages of targets within a project, and narrow your search by using different scopes and excluding certain items.
Find the search string in a project
In the search field, type your search string. Alternatively, in the editor, highlight the string you want to find and press Control+Shift+F. CLion places the highlighted string into the search field.
To see a list of your previous searches, press Alt ArrowDown.
To do a multi-line search, click the icon to enter a new line, and press Control+Alt+ArrowDown/Control+Alt+ArrowUp to browse through occurrences.
Check the results in the preview area of the dialog where you can replace the search string or select another string, press Control+Shift+F again and start a new search.
To see the list of occurrences in a separate tool window, click Open in Find Window. Use this window and its options to group the results, preview them, and work with them further.
If you want to see each new search result in a separate tab in the Find tool window, click on the bottom of the Find in Files dialog and select the Open Results in New Tab checkbox.
Copy paths or references of the found files
In the list of search results, right-click the result for which you want to copy a path and click Copy/Reference.
In the Copy window, select the path or reference you need.
Replace the search string in a project
Press Control+Shift+R to open the Replace in Path dialog.
In the top field, enter your search string. In the bottom field, enter your replacement string.
For example, if you want to replace a variable name with a new name for a large project, use Replace in Path instead of Rename refactoring since your variable can appear in config files as well.
Click one of the available Replace commands.
Narrow your search
You can use different options in the Find in Files dialog to adjust your search process.
Select options such as Words () or Match case () to find the exact word in a project or match the letter case.
With selected, CLion automatically escapes special regex symbols with backslash
\when you search for a text string that contains them.
For more information about regex, refer to the search with regex documentation.
Click the icon to filter your search. For example, you can filter the search to omit comments or search only in comments instead.
Select Directory to limit your search to a specific folder.
Moreover, you can select the Scope option that offers you a list of predefined scopes for your search. For example, you can limit your search only to the open files in your project.
If you work without tabs, the scope Recently Viewed Files or Recently Changed Files option might become quite useful. You can also create your own custom scope, click the Browse icon () to open the Scopes dialog.
Search in the specific file types
Use the File Mask option to narrow your search to a specific file type. You can select the existing file type from the list, add a new file type, or add an additional file mask syntax to search for file types with certain patterns.
In the Find in Files dialog, select the File Mask checkbox and from the list of file types, select the one you need.
CLion limits its search to the specified type.
If you don't find the file type you need in the list, enter your file type in the File Mask field.
For example, use the following syntax to search only in cpp files: *.cpp.
*, other wildcards are supported. If necessary, specify several file types using commas as separators.