EditPoint2::ReplacePattern Method (TextPoint^, String^, String^, Int32, TextRanges^)
Finds a pattern in the specified range of text and replaces it with the specified text.
Assembly: EnvDTE80 (in EnvDTE80.dll)
bool ReplacePattern( TextPoint^ Point, String^ Pattern, String^ Replace, int vsFindOptionsValue = 0, TextRanges^% Tags = null )
Parameters
- Point
-
Type:
EnvDTE::TextPoint^
Required. The endpoint of the specified range of text. The edit point and Point are the boundaries for replacement.
- Pattern
-
Type:
System::String^
Required. The string to find.
- Replace
-
Type:
System::String^
Required. The replacement string for Pattern.
- vsFindOptionsValue
-
Type:
System::Int32
Optional. A vsFindOptions constant indicating the type of search to perform.
- Tags
-
Type:
EnvDTE::TextRanges^
Optional. If the matched pattern is a regular expression containing tagged sub-expressions, then Tags contains a collection of TextRange objects, one for each tagged sub-expression.
ReplacePattern finds text similarly to FindPattern, except that it only searches the text between edit point and the argument Point. To find and replace in the entire document, use TextDocument.ReplacePattern. The Tags collection returns only information for the last matched pattern.
Sub ReplacePatternExample() Dim objTextDoc As TextDocument Dim objMovePt As EditPoint Dim objEditPt As EditPoint, iCtr As Integer ' Create a new text file. DTE.ItemOperations.NewFile("General\Text File") ' Get a handle to the new document and create an EditPoint. objTextDoc = DTE.ActiveDocument.Object("TextDocument") objMovePt = objTextDoc.EndPoint.CreateEditPoint objEditPt = objTextDoc.StartPoint.CreateEditPoint ' Insert ten lines of text. For iCtr = 1 To 10 objEditPt.Insert("This is a test." & Chr(13)) Next iCtr objEditPt.StartOfDocument() objMovePt.EndOfDocument() ' Replace all occurrences of "test" with "thing." objEditPt.ReplacePattern(objMovePt, "test", "thing", vsFindOptions.vsFindOptionsFromStart) End Sub