ホームページ >バックエンド開発 >C++ >.NETで文字列の最初のインスタンスのみを置換するにはどうすればよいですか?

.NETで文字列の最初のインスタンスのみを置換するにはどうすればよいですか?

DDD
DDDオリジナル
2025-01-19 06:03:12433ブラウズ

How to Replace Only the First Instance of a String in .NET?

.NET での文字列置換の最初のインスタンス

.NET では、文字列内の最初の文字列を置換する方法がいくつか提供されています。 最も簡単なアプローチは、IndexOf メソッドを組み合わせて使用​​して最初に一致したインデックスを検索し、文字列の Substring メソッドを使用して置換された文字列を構築することです。 この機能を実装するサンプル コードは次のとおりです:

<code class="language-csharp">string ReplaceFirst(string text, string search, string replace)
{
  int pos = text.IndexOf(search);
  if (pos >= 0)
  {
    return text.Substring(0, pos) + replace + text.Substring(pos + search.Length);
  }
  return text;
}</code>

例:

<code class="language-csharp">string str = "The brown brown fox jumps over the lazy dog";
str = ReplaceFirst(str, "brown", "quick"); // str 现在是 "The quick brown fox jumps over the lazy dog"</code>

追加メモ:

  • @itsmatt が述べたように、Regex.Replace(String, String, Int32) メソッドも使用できますが、ここで提供されているカスタム メソッドほど効率的ではない可能性があります。
  • 高いパフォーマンス要件が必要なシナリオでは、拡張メソッドを作成して置換操作を簡素化できます。

以上が.NETで文字列の最初のインスタンスのみを置換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。