This section outlines the general SSR procedure. Refer to the section Structural Search and Replace Examples for typical use cases.
- On the main menu, choose Ctrl+Shift+SCtrl+Shift+SCtrl+Shift+SCtrl+Shift+SCtrl+Shift+SCtrl+Shift+SCtrl+Shift+SCtrl+Shift+SCtrl+Shift+SShift Command SShift Command SShift Command S or Ctrl+Shift+MCtrl+Shift+MCtrl+Shift+MCtrl+Shift+MCtrl+Shift+MCtrl+Shift+MCtrl+Shift+MCtrl+Shift+MCtrl+Shift+MShift Command MShift Command MShift Command M respectively. , or . Alternatively, use keyboard shortcuts
- In the dialog box that opens, define the search template. In brief, defining a
search template involves the following steps:
- Type the desired construct in the Search template text area, or use one of the pre-defined search templates by clicking the Copy existing template button.
- Specify the constraints to be imposed on the variables within the search template. To do that, click the Edit variables button. All the variables contained in the search template are listed in the Variables pane of the Edit Variable dialog box.
Refer to the section Creating and Editing Search Templates for the detailed description of procedure.
- In case of the structural replace, specify the replacement pattern, and define variable constraints as required.
- Specify the search and replace options, in particular, the number of occurrences to be matched, and the type of files (Java, XML or HTML) to be analyzed.
- Specify the scope to perform the structural search and replace in. To do that, click the down arrow in the Scope list, and select one of the pre-defined scopes, or click the ellipsis button, and configure the desired scope in the Scopes dialog box.
- Click Find. The detected occurrences are displayed in the
Find tool window.
- If you want to perform structural search with different search template or conditions, click the Edit Query button.
- In case of replacement, you can select the desired matches in the search results and click the Preview Replacement button. The corresponding occurrence is highlighted in the source code.