私は、JPEG画像の情報を操作するためのPythonプログラムを開発しています。しかし、JPEG画像で使用されるバイトマーカーコードを探す正規表現を取得するのに問題があります。正規表現でJPEGバイトマーカーを解析する
たとえば、画像マーカーの開始は\xFF\xD8
で、画像マーカーの末尾は\xFF\xD9
です。私が使用しようとしたパターンは、rb'\xFF\xD8(.+?)\xFF\xD9'
でした。成功はありません。バイト配列内の特定のバイトマーカーの間にあるものすべてを探したい場合、私のパターンはどうなりますか?
バックスラッシュを別のバックスラッシュでエスケープする必要があります。 – ctwheels
正規表現の '.'はデフォルトで改行文字にマッチしません。また、JPEGファイルには偶然にも改行が含まれています。 '.'を任意のバイトにマッチさせるために、flagsパラメータとして' re.DOTALL'を渡します(ほぼすべてのregexメソッドで利用可能です)。 – jasonharper
ありがとうございます。私は実際にこれを知っていた。一致を見つける私の実際のコードは以下の通りです。 'matches = re.findall(pattern、data、flags = re.DOTALL)' –