Sto tentando di analizzare correttamente una richiesta multipart/form-data, funziona a meno che il file che sta per essere caricato contenga doppi apici.Regex per nome file con citazioni in più parti
La richiesta sembra (estratto da wireshark):..
Content-Disposition: form-data; name="file"; filename="b'e\"e.JPG"
modo che il file è in realtà chiamato b'e "e.jpg sul mio file system locale Il browser sfugge le virgolette correttamente
voglio afferrare il nome del file b'e\"e.JPG
fuori di questa stringa
ho trovato una regex per afferrare stringhe tra virgolette con le virgolette escape all'interno:.
/"[^"\\]*(\\.[^"\\]*)*"/i
(fonte http://www.regular-expressions.info/regexbuddy/stringescapedmulti.html)
L'espressione regolare funziona perfettamente quando applicato sulla corda "b'e\"e.JPG"
ma quando provo a scopo solo sul parte, come:
/filename="[^"\\]*(\\.[^"\\]*)*"/i
Non voglio ottenere qualsiasi risultati.
Qualsiasi aiuto sarebbe molto apprezzato
Edit:
sto lavorando con JavaScript, così ho messo la regex al violino js: http://jsfiddle.net/hDBcs/
Grazie!
Simon
Solo un rapido test con RegexBuddy funziona bene per me, c'è un'altra parte del Regex quello potrebbe rovinarlo? – CodingGorilla
Ciao, grazie per il test :) ma in javascript purtroppo non funziona. Ho aggiunto un test rapido su jsFiddle (vedi modifica). – sled