PyCharm 2021.1 Help

Structural search and replace dialogs

Edit | Find | Search Structurally

Edit | Find | Replace Structurally

Use these dialogs to find and replace fragments of code that structurally match the suggested search template.

ItemDescriptionAvailable in
Search templateUse this text area to specify the template based on which PyCharm performs the search process. You can type the template code in the field or click the Settings/Preferences button and select the Existing Templates option to see a list of existing templates.Both
Match caseSelect this checkbox if you want PyCharm to match the case of the code you are searching for.Both
File typeUse this option to select a file type for your search. In this case, PyCharm searches only in the specified file types.Both
the Filter iconClick this icon to add filters for the whole search template. Use the Add icon to add a new filter or the Remove icon to remove the existing one.Both
the Settings/Preferences icon

Click this icon to select one of the following options:

  • Save Template: use this option to save a template you have specified in the search template area. PyCharm adds the saved template to the User Defined node in the Existing Templates dialog.

  • Export Template to Clipboard: use this option to export the template and share it.

  • Import Template to Clipboard: use this option to import the shared template.

  • Existing Templates: use this option to see the list of existing templates.

    In the Existing Templates dialog, select one of the pre-defined or custom templates. The selected template is displayed in the Preview field. When you click OK, PyCharm inserts the source code of the template into the Search template or Replace template field.

  • Switch to Search/ Switch to Replace: use this option to quickly switch to the Structural Search or the Structural Replace dialog.

Both
Replacement templateUse this text area to specify the template to be substituted. You can type the template code in the field or click the Settings/Preferences button and select the Existing Templates option to see a list of existing templates.Structural Replace
searchClick this icon to see the list of your previous searches.Both
Shorten fully qualified namesThis option makes sense in case the template text contains fully qualified class names. If the checkbox is selected, PyCharm automatically reduces these names in the template. Otherwise, fully qualified class names are used.Structural Replace
ReformatCheck this option, if you want PyCharm to automatically reformat the expanded code fragment according to your code style settings (for details, refer to the Code Style dialog). If the option is not checked, PyCharm will only indent the whole template according to the position in code at which it is expanded, leaving its formatting as is.Structural Replace
Use static importsCheck this option, if you want PyCharm to shorten any references to static elements in the replaced code. PyCharm will insert a static import for those elements. The elements are then referenced by their short name. If there are no references to static elements in the replaced code, the option will be ignored.Structural Replace
InUse this area to specify where PyCharm should search for and replace your code.

You can select from the following options:

  • Project: when you select this option, PyCharm searches and replaces the specified template in the whole project.

  • Module: when you select this option, PyCharm searches and replaces the specified template in the selected module.

  • Directory: when you select this option, PyCharm searches and replaces the specified template in the selected directory.

  • Scope: when you select this option, PyCharm searches and replaces the specified template in a certain scope that you have selected. You can select a predefined scope from the available list or create a custom scope when you click the Browse button.

Both
Search targetUse this option to specify the target of your search process which could be the exact match of the template you have specified (Complete match) or just a part of it. The options of the search target depend on the file type you have selected.Both
Open in new tabIf this checkbox is selected, the results of the new search display in a new tab in the Find results tool window. Otherwise, the search results update the existing tab.Both
Last modified: 08 March 2021