Share via


EditPoint.ReplacePattern 方法

在指定范围内的文本中查找模式并用指定文本替换它。

命名空间:  EnvDTE
程序集:  EnvDTE(在 EnvDTE.dll 中)

语法

声明
Function ReplacePattern ( _
    Point As TextPoint, _
    Pattern As String, _
    Replace As String, _
    vsFindOptionsValue As Integer, _
    <OutAttribute> ByRef Tags As TextRanges _
) As Boolean
bool ReplacePattern(
    TextPoint Point,
    string Pattern,
    string Replace,
    int vsFindOptionsValue,
    out TextRanges Tags
)
bool ReplacePattern(
    [InAttribute] TextPoint^ Point, 
    [InAttribute] String^ Pattern, 
    [InAttribute] String^ Replace, 
    [InAttribute] int vsFindOptionsValue, 
    [InAttribute] [OutAttribute] TextRanges^% Tags
)
abstract ReplacePattern : 
        Point:TextPoint * 
        Pattern:string * 
        Replace:string * 
        vsFindOptionsValue:int * 
        Tags:TextRanges byref -> bool
function ReplacePattern(
    Point : TextPoint, 
    Pattern : String, 
    Replace : String, 
    vsFindOptionsValue : int, 
    Tags : TextRanges
) : boolean

参数

  • Point
    类型:EnvDTE.TextPoint

    必需。 指定范围内的文本的终结点。 编辑点和 Point 是替换的边界。

  • Pattern
    类型:String

    必需。 要查找的字符串。

  • Replace
    类型:String

    必需。 Pattern 的替换字符串。

  • vsFindOptionsValue
    类型:Int32

    可选。 一个 vsFindOptions 常数,该常数指示要执行的搜索类型。

  • Tags
    类型:EnvDTE.TextRanges%

    可选。 如果匹配的模式是一个正则表达式并且包含带标记的子表达式,则 Tags 包含一组 TextRange 对象,每个带标记的子表达式对应一个对象。

返回值

类型:Boolean
如果成功执行了替换,则为 true;否则为 false。

备注

ReplacePattern 查找文本的方式类似于 FindPattern,不同的是它只搜索编辑点和 Point 参数之间的文本。 若要在整个文档中查找并替换,请使用 ReplacePattern。 Tags 集合只返回上一个匹配模式的信息。

示例

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

.NET Framework 安全性

请参阅

参考

EditPoint 接口

EnvDTE 命名空间