ホームページ >バックエンド開発 >C++ >Python の beginswith() および部分文字列から整数への機能を C で複製するにはどうすればよいですか?

Python の beginswith() および部分文字列から整数への機能を C で複製するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-03 06:19:03417ブラウズ

How can I replicate Python's startswith() and substring-to-integer functionality in C  ?

C でのプレフィックス文字列の存在の確認と部分文字列の整数への変換

ユーザーが Python の文字列プレフィックス チェックと部分文字列変換の実装に関するガイダンスを求めていますC で。具体的には、Python のstartswith() メソッドと部分文字列の整数への変換の機能を実現することを目的としています。

プレフィックス文字列の存在の確認

C 文字列が始まるかどうかを確認するには特定のプレフィックスを使用する場合は、検索位置 0 で rfind() メソッドを利用します。例:

<code class="cpp">std::string s = "tititoto";
if (s.rfind("titi", 0) == 0) {
  // s starts with "titi"
}</code>

検索位置を 0 に設定すると、rfind() メソッドは文字列の先頭のみをチェックします。これにより、効率的かつ正確なプレフィックス マッチングが可能になります。

部分文字列を整数に変換する

部分文字列を整数に変換するには、stoi() 関数を使用します。

<code class="cpp">if (s.rfind("--foo=", 0) == 0) {
    int foo_value = std::stoi(s.substr(strlen("--foo=")));
}</code>

このコードは、「--foo=」プレフィックスをチェックし、見つかった場合は、その末尾 (「=」文字の後) から部分文字列を抽出し、stoi() を使用して整数に変換します。

更新: Boost 統合

ユーザーは Boost の採用に消極的です。ただし、必要に応じて自由に使用できます。 Boost は、Spirit Library のstarts_with() および stoi() 機能を含む追加の文字列操作機能を提供します。

以上がPython の beginswith() および部分文字列から整数への機能を C で複製するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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