ホームページ >バックエンド開発 >C++ >文字列内の 2 つの特定の文字シーケンスの間の部分文字列を抽出するにはどうすればよいですか?

文字列内の 2 つの特定の文字シーケンスの間の部分文字列を抽出するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-23 00:21:13555ブラウズ

How Can I Extract a Substring Between Two Specific Character Sequences in a String?

文字列からテキストセグメントを抽出する

一般的な文字列操作タスクには、2 つの既知のマーカー シーケンスの間にある特定の部分文字列を分離することが含まれます。 これを明確な例で説明しましょう。

文字列「文字列キーのスーパー例: 保持したいテキスト - 文字列の終わり」を考えてみましょう。 私たちの目的は、「key :」と「-」の間のテキストのみを抽出することです。 複雑な正規表現を避け、よりシンプルで直接的な方法を選択します。

これは、Substring メソッドを使用して実現できます。このメソッドには、部分文字列の開始インデックスとその長さの 2 つの引数が必要です。

ソリューションの実装:

<code class="language-java">String St = "super example of string key : text I want to keep - end of my string";

int pFrom = St.indexOf("key : ") + "key : ".length();
int pTo = St.lastIndexOf(" - ");

String result = St.substring(pFrom, pTo - pFrom);</code>

コードはまず「key :」のインデックスを検索し、開始位置 (pFrom) がマーカーの直後になるように調整します。 次に、最後に出現した「 - 」を検索して終了位置 (pTo) を決定します。最後に、pFrom から部分文字列を pTopFrom の差として計算された長さに抽出します。

result 変数には、目的の部分文字列「保持したいテキスト」が含まれるようになります。この方法は、複雑な正規表現パターンを必要としない、明確で効率的なソリューションを提供します。

以上が文字列内の 2 つの特定の文字シーケンスの間の部分文字列を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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