ファイルの各行を読み取り、正規表現で定義された特定の形式に従ってデータを抽出するプログラムがあります。Match()
ファイルの各行に対して複数回呼び出す代わりに、ファイルMatch()
の内容全体に対して呼び出すことができます。より効率的な解決策はどれですか?
後者の選択にはRegexOptions.Multiline
オプションが必要です。
アップデート:
ファイルはエンドユーザーによって指定されるため、大きくなる可能性があります(〜37000行、〜2MB)。すべての行に有効なエントリが含まれている必要はありません。
私が使用している正規表現はです^\s*(OPTL_\w*)\s*=>\s*(\d+)\s*$
。たとえば、これはテキストで構成される行とは一致しますOPTL_Example => 123
が、テキストで構成される行とは一致しませんFooBar => 999
。