Как пощенските клиенти съхраняват поща на твърдия ви диск
Най-често срещаният формат за съхраняване на съобщения е mbox. MBOX означава MailBOX. Mbox е един файл, съдържащ нула или повече пощенски съобщения.
Форматът mbox
Ако използваме формата mbox за съхраняване на имейли, ние ги поставяме в един файл. Това създава повече или по-малко дълъг текстов файл (интернет адресът на електронната поща винаги съществува само като 7-битов ASCII текст, всичко останало - например прикачените файлове - се кодират ), съдържащи едно имейл съобщение след другото. Как можем да разберем къде свършва един и друг започва?
За щастие, всеки имейл има най-малко един от линия в самото си начало. Всяко съобщение започва с "От" (От следвано от знак за бяло пространство, наричано още "From_"). Ако тази последователност ("От") в началото на реда е предшествана от празен ред или е в горната част на файла, открихме началото на съобщение.
Така че това, което търсим, когато анализираме файл mbox, по същество е празен ред, последван от "От".
Като регулярен израз можем да напишем това като "\ n \ nFrom. * \ N". Само първото съобщение е различно. Той започва само с "От" в началото на реда ("^ От. * \ N").
& # 34; От & # 34; в тялото
Какво ще стане, ако точно последователността по-горе се появи в тялото на имейл съобщение? Какво ще стане, ако следното е част от имейл?
... ви изпращам най-скорошния отчет.
От този отчет не е нужно ...
Тук има празна линия, последвана от "От" в началото на реда. Ако това се появи в mbox файл, ние безспорно имаме началото на ново съобщение. Поне така мисли анализаторът - и защо и имейл клиента и ние ще сме доста объркани от имейл съобщение, което не съдържа нито подател, нито получател, а започва с "От този отчет".
За да избегнем такива катастрофални условия, трябва да се уверим, че "От" никога не се появява в началото на ред, следващ празен ред в тялото на имейл.
Когато добавяме ново съобщение към файла mbox , търсим такива последователности в тялото и просто заместваме "От" с "> От". Това прави неправилното тълкуване невъзможно. Примерът по-горе сега изглежда така и вече не задейства анализатора:
... ви изпращам най-скорошния отчет.
> От този отчет не е нужно ...
Ето защо понякога може да намерите "> От" в имейл, където бихте очаквали само "От".