Any advice/ideas on the best way of attacking field split on ';' when the string looks like:

s = 'a;b;c\;;d;'

i.e. field delimiter is ';', and if ; appears in field data ; => \;  

Any regex magic? or should I use s.each_byte and do it by hand?

Thanks,
Dany