5
csv形式は正規表現で定義できますか?
同僚と私は最近、純粋な正規表現がcsv形式を完全にカプセル化できるかどうかを議論しました。これにより、任意のエスケープ文字、引用文字、および区切り文字を含むすべてのファイルを解析できます。 正規表現は、作成後にこれらの文字を変更できる必要はありませんが、他のエッジケースで失敗してはなりません。 これはトークナイザーだけでは不可能だと主張しました。これを行うことができる唯一の正規表現は、トークン化だけでなく、非常に複雑なPCREスタイルです。 私は次のラインに沿って何かを探しています: ... csv形式はコンテキストのない文法であるため、正規表現のみで解析することは不可能です... それとも私は間違っていますか?POSIX正規表現だけでcsvを解析することは可能ですか? たとえば、エスケープ文字と引用文字の両方がの"場合、これらの2行は有効なcsvです。 """this is a test.""","" "and he said,""What will be, will be."", to which I replied, ""Surely not!""","moving on to the next field here..."