マルチパート/フォームデータ要求を正しく解析するために、アップロードされるファイルに二重引用符が含まれていない限り動作します。マルチパートの引用符付きファイル名の正規表現
要求(wiresharkのからの抜粋)のようになります。。
Content-Disposition: form-data; name="file"; filename="b'e\"e.JPG"
は、だから、ファイルは実際に私のローカルファイルシステム上b'e「e.jpgと呼ばれているブラウザが適切に引用符をエスケープ
。私は
この文字列からファイル名b'e\"e.JPG
をつかむしたい私は、内部のエスケープ引用符で引用符で囲まれた文字列をつかむために正規表現を見つけました:
/filename="[^"\\]*(\\.[^"\\]*)*"/i
:私だけ部分にスコープにそれをしようとすると、
(ソースhttp://www.regular-expressions.info/regexbuddy/stringescapedmulti.html)
正規表現は次のように、文字列"b'e\"e.JPG"
に適用されたときに完璧に動作しますが、結果。
すべてのヘルプは本当に
をいただければ幸いです編集:私はJavaScriptで働いているので、私はjsのフィドルに正規表現を置く
ありがとう!
サイモン
だけRegexBuddyとの簡単なテストは、私のために正常に動作し、正規表現の別の部分がありますそれはそれを台無しにするかもしれない? – CodingGorilla
こんにちは、テストのおかげで:)しかし、それは残念ながら動作しませんjavascriptで。私はjsFiddleの簡単なテストを追加しました(編集を参照)。 – sled