Erstes Vorkommen einer Zeichenfolge in .NET ersetzen
.NET bietet mehrere Möglichkeiten, das erste Vorkommen einer bestimmten Zeichenfolge in einem bestimmten Text zu ersetzen.
Eine Möglichkeit besteht darin, eine benutzerdefinierte Methode zu verwenden, wie im folgenden Beispiel:
<code class="language-csharp">string ReplaceFirst(string text, string search, string replace) { int pos = text.IndexOf(search); if (pos < 0) return text; return text.Substring(0, pos) + replace + text.Substring(pos + search.Length); }</code>
Diese Methode sucht nach dem ersten Vorkommen von „search“ in „text“ und ersetzt es durch „replace“. Die Logik ist wie folgt:
Zum Beispiel:
<code class="language-csharp">string str = "The brown brown fox jumps over the lazy dog"; str = ReplaceFirst(str, "brown", "quick");</code>
Darüber hinaus stellt .NET die Methode Regex.Replace(String, String, Int32)
bereit, die über eine ähnliche Funktionalität verfügt. Aufgrund des leistungsstarken Parsers können jedoch höhere Laufzeitkosten anfallen.
Um die häufige Verwendung zu erleichtern, können Sie eine Erweiterungsmethode erstellen:
<code class="language-csharp">public static class StringExtension { public static string ReplaceFirst(this string text, string search, string replace) { // ...与上面相同... } }</code>
Mit dieser Erweiterungsmethode kann das Beispiel wie folgt vereinfacht werden:
<code class="language-csharp">str = str.ReplaceFirst("brown", "quick");</code>
Das obige ist der detaillierte Inhalt vonWie kann ich nur das erste Vorkommen einer Zeichenfolge in .NET ersetzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!