次の方法で共有


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 オブジェクト (各タグ付き部分式に 1 つ) のコレクションが含まれます。

戻り値

型 : 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 名前空間