課題: 以下を区別する正規表現の作成:
初期試行:
提供された初期正規表現は、内部のバランスの取れた括弧を効果的に検出します。 for/while ステートメント。ただし、ループ式に関数呼び出しが含まれている場合は問題が発生します。
^\s*(for|while)\s* \( # match the initial opening parenthesis (?P<balanced> [^()] | \( (?P=balanced)* \) )* # Look for a sequence of balanced substrings \) # Finally, the outer closing parenthesis. \s*;\s*
修正されたアプローチ:
提案された解決策は、正規表現ベースのアプローチから逸脱しています。代わりに、
利点:
以上が正規表現はセミコロンで終了する C の For および While ループを確実に識別できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。