Match.Result(String) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen değiştirme deseninin genişlemesini döndürür.
public:
virtual System::String ^ Result(System::String ^ replacement);
public virtual string Result (string replacement);
abstract member Result : string -> string
override this.Result : string -> string
Public Overridable Function Result (replacement As String) As String
Parametreler
- replacement
- String
Kullanılacak değiştirme deseni.
Döndürülenler
Parametrenin replacement
genişletilmiş sürümü.
Özel durumlar
replacement
, null
değeridir.
Bu düzen için genişletmeye izin verilmez.
Örnekler
Aşağıdaki örnek, parantez içeren bir ifadeyi başlatan ve bitiren kısa çizgileri parantezlerle değiştirir.
using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = "--(.+?)--";
string replacement = "($1)";
string input = "He said--decisively--that the time--whatever time it was--had come.";
foreach (Match match in Regex.Matches(input, pattern))
{
string result = match.Result(replacement);
Console.WriteLine(result);
}
}
}
// The example displays the following output:
// (decisively)
// (whatever time it was)
Imports System.Text.RegularExpressions
Module Example
Public Sub Main()
Dim pattern As String = "--(.+?)--"
Dim replacement As String = "($1)"
Dim input As String = "He said--decisively--that the time--whatever time it was--had come."
For Each match As Match In Regex.Matches(input, pattern)
Dim result As String = match.Result(replacement)
Console.WriteLine(result)
Next
End Sub
End Module
' The example displays the following output:
' (decisively)
' (whatever time it was)
Normal ifade deseni --(.+?)--
aşağıdaki tabloda gösterildiği gibi yorumlanır.
Desen | Description |
---|---|
-- |
İki kısa çizgi eşleştirin. |
(.+?) |
Herhangi bir karakteri bir veya daha fazla kez, ancak mümkün olduğunca az kez eşleştirin. Bu ilk yakalama grubudur. |
-- |
İki kısa çizgi eşleştirin. |
Normal ifade deseninin --(.+?)--
gecikmeli niceleyiciyi +?
kullandığını unutmayın. Bunun yerine doyumsuz niceleyici +
kullanıldıysa, normal ifade altyapısı giriş dizesinde yalnızca tek bir eşleşme bulur.
Değiştirme dizesi ($1)
, eşleşmeyi parantez içine alınmış ilk yakalanan grupla değiştirir.
Açıklamalar
Regex.Replace yöntemi bir giriş dizesindeki tüm eşleşmeleri belirtilen değiştirme deseniyle değiştirirken, yöntem tek bir eşleşmeyi Result belirtilen değiştirme deseniyle değiştirir. Tek bir eşleşme üzerinde çalıştığından, yöntemini çağırmadan Result önce eşleşen dizede işleme gerçekleştirmek de mümkündür.
replacement
parametresi standart bir normal ifade değiştirme desenidir. Değişmez karakterlerden ve normal ifade değiştirmelerinden oluşabilir. Daha fazla bilgi için bkz. Değiştirmeler.