The standard facility helps you find and replace text strings in the active editor.
In this section:
- Search in the current file
- Replace in the current file
- Working with search results
- Search and replace options
- Example. Finding and replacing a string using regular expression.
- On the main menu, choose FindFindFindFindFindFindFindFindFindFindFind. The search pane appears on top of the active editor. , or press
- If necessary, specify the search options.
- In the search field, start typing the search string:
As you type, the first occurrence of the search string after the current cursor position is selected; the other occurrences are highlighted in the editor. In addition, the matching occurrences are marked in the right gutter with stripes.
- Explore search results.
- On the main menu, choose ReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplace. The search and replace pane appears on top of the active editor. , or press
- If necessary, specify the search and replace options.
- In the search field, start typing the search string. As you type, the matching occurrences are highlighted in the editor, and a Replace pop-up dialog box opens at the first occurrence, suggesting you to replace the current occurrence, or all of them, with an empty string.
- Start typing the replacement string.
- Explore search results, and, using the buttons of the replace dialog box, replace occurrences as required. See Search and replace options below.
- To initiate a new search, do one of the following (depending on the current focus):
- If the editor has the focus, press FindFindFindFindFindFindFindFindFindFindFind.
- If the search field has the focus, press $SelectAll$SelectAll$SelectAll$SelectAll$SelectAll$SelectAll$SelectAll$SelectAll$SelectAll$SelectAll$SelectAll
In both cases, the existing search string will be selected, and you can start typing a new one.
- To jump between occurrences, do one if the following:
- Press FindPreviousFindPreviousFindPreviousFindPreviousFindPreviousFindPreviousFindPreviousFindPreviousFindPreviousFindPreviousFindPrevious or FindNextFindNextFindNextFindNextFindNextFindNextFindNextFindNextFindNextFindNextFindNext.
- Use or buttons in the Search pane.
- Click the gutter stripes.
- The search pane shows the number of found occurrences. If no matches are found, the search pane is red highlighted:
- Use Code completion in Find and Replace panes. Start typing the search string, press CodeCompletionCodeCompletionCodeCompletionCodeCompletionCodeCompletionCodeCompletionCodeCompletionCodeCompletionCodeCompletionCodeCompletionCodeCompletion, and select the appropriate word from the suggestion list.
- Use the recent history of searches: with the search pane already open, click to show the list of recent entries.
- With the search or replace pane already opened, use ReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplace or FindFindFindFindFindFindFindFindFindFindFind to toggle between panes. So doing, the search and replace strings are preserved.
- To cancel operation and close the pane, press EditorEscapeEditorEscapeEditorEscapeEditorEscapeEditorEscapeEditorEscapeEditorEscapeEditorEscapeEditorEscapeEditorEscapeEditorEscape.
Search and replace options
|Click this button to show the history of the recent entries.||Search, replace|
|Click this button to clear the search field.||Search, replace|
|Click these buttons to navigate through the occurrences of the search string.||Search, replace|
|Click this button to show search results in the Find tool window.||Search, replace|
|Click this button to enable entering the search string in several lines. If this button is not pressed,
you still can enter search strings that occupy several lines, but should work in the regular expression mode and use escape characters.
|Match Case||If this check box is selected, MPS will distinguish between upper and lowercase letters while searching.||Search, replace|
|Regex||If this check box is selected, the search string will be perceived as a regular expression, and the replacement preview is shown in a tooltip ( Refer to the section Example).||Search, replace|
|Words||if this check box is selected, MPS will search for whole words only,
that is, for character strings separated with spaces, tabs, punctuation, or special characters.
This check box is disabled, if the Regular expressions check box is selected.
|Preserve Case||If this check box is selected, MPS retains the case of the first letter
and the case of the initial string in general. For example,
MyTest will be replaced with Yourtest if you specify yourtest as the replacement.
This check box is disabled, if Regular expressions check box is selected.
|In Selection||If this check box is selected, search and replacement will be confined to the selected text only.||Replace|
|Replace||Click this button to replace the current occurrence and proceed to the next one.||Replace|
|Replace all||Click this button the replace all found occurrences in the current file, or in the selection.||Replace|
|Exclude/Include||Click Exclude button to skip the current occurrence and exclude it from the Replace all operation. The button for this occurrence changes to Include.||Replace|
|Click this button to reveal the list of additional options:
Example. Finding and replacing a string using regular expression.
Consider the following XML code fragment:
<new product="ij" category="105" title="Multiline search and replace in the current file" /> <new product="ij" category="105" title="Improved search and replace in the current file" /> <new product="ij" category="105" title="Regexp shows replacement preview" /> ...
Suppose you want to replace an attribute within an element (title) with an expanded tag <title></title>, which contains some arbitrary string in double-quotes within.
This is how it's done.
- With the XML file in question opened in the editor, press ReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplaceReplace. The Replace pane appears on top of the editor.
- Since you want to replace all the title attributes, regardless of the actual strings contained therein, use regular expressions. Make sure that the check box Regex is selected. Thus everything you type in the Search and Replace fields will be perceived as the regular expressions.
- In the Search field, start typing regular expression that describes all title attributes.
Note that though the regular expression \stitle=".*?"\s*[/>]* matches contents of the title
attribute, it is recommended to capture the groups for referencing them in the Replace field:
Note that for the regular expressions replacement preview is shown at the tooltip.
- Then, in the Replace field, type the following regular expression:
- Click Replace, or Replace All.
As you see, the second capture group (/>) is moved ahead to close the <new> element, while the first capture group <, which matches any string in double quotes, is moved to the element <title>.