Freigeben über


TextDocument.ReplacePattern-Methode

Ersetzt übereinstimmenden Text innerhalb eines gesamten Textdokuments.

Namespace:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

Syntax

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

Parameter

  • Pattern
    Typ: System.String
    Erforderlich.Die zu suchende Zeichenfolge.
  • Replace
    Typ: System.String
    Erforderlich.Der Text, durch den jedes Vorkommen von Pattern ersetzt wird.
  • vsFindOptionsValue
    Typ: System.Int32
    Optional.Eine vsFindOptions-Konstante, die das Verhalten von ReplacePattern darstellt. Dazu gehören z. B. die Suchmethode, die Position, an der mit der Suche begonnen wird, ob die Suche vorwärts oder rückwärts ausgeführt wird, ob die Groß-/Kleinschreibung berücksichtigt wird usw.
  • Tags
    Typ: EnvDTE.TextRanges%
    Optional.Eine TextRanges-Auflistung.Wenn das gesuchte Textmuster ein regulärer Ausdruck ist und markierte Unterausdrücke umfasst, enthält Tags eine Auflistung von EditPoint-Objekten, jeweils eines für jeden markierten Unterausdruck.

Rückgabewert

Typ: System.Boolean
Ein boolescher Wert.

Hinweise

Durch die ReplacePattern-Methode für das TextDocument-Objekt wird Text wie ReplacePattern für das TextSelection-Objekt ersetzt, sie wird jedoch normalerweise für das vollständige Textdokument verwendet und nicht nur für den markierten Text.

Die ReplacePattern-Methode für Visual Studio 2005 ist mit früheren Versionen der ReplacePattern-Methode nicht kompatibel, da reguläre Ausdrücke jetzt über eine andere Syntax verfügen.

Beispiele

Sub ReplacePatternExample(dte As DTE)

    ' Create a new text file and insert 10 lines of text.
    dte.ItemOperations.NewFile()
    Dim txtSel As TextSelection = _
        CType(dte.ActiveDocument.Selection, TextSelection)
    Dim txtDoc As TextDocument = _
        CType(dte.ActiveDocument.Object(), TextDocument)
    Dim editPnt As EditPoint = txtDoc.StartPoint.CreateEditPoint()
    Dim i As Integer
    For i = 1 To 10
        editPnt.Insert("This is a test." & vbCrLf)
    Next i

    If MsgBox("Replace 'test' with 'done deal'?", vbYesNo) = _
        MsgBoxResult.Yes Then
        txtSel.SelectAll()
        txtSel.ReplacePattern("test", "done deal")
    End If

End Sub
public void ReplacePatternExample(DTE dte)
{
    // Create a new text file and insert 10 lines of text.
    dte.ItemOperations.NewFile(@"General\Text File", "", 
        Constants.vsViewKindPrimary);
    TextSelection txtSel = (TextSelection)dte.ActiveDocument.Selection;
    TextDocument txtDoc = (TextDocument)dte.ActiveDocument.Object("");
    EditPoint editPnt = txtDoc.StartPoint.CreateEditPoint();
    for (int i = 1; i <= 10; i++)
    {
        editPnt.Insert("This is a test." + Environment.NewLine);
    }

    if (MessageBox.Show("Replace 'test' with 'done deal'?", "", 
        MessageBoxButtons.YesNo) == DialogResult.Yes)
    {
        TextRanges dummy = null;
        txtSel.SelectAll();
        txtSel.ReplacePattern("test", "done deal", 
            (int)vsFindOptions.vsFindOptionsNone, ref dummy);
    }
}

.NET Framework-Sicherheit

Siehe auch

Referenz

TextDocument Schnittstelle

EnvDTE-Namespace

Weitere Ressourcen

Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell