Разбор nfo файла регулярками

sylord

Новичок
Разбор nfo файла регулярками

Есть куча файлов .nfo (около 8500) с информацией о релизе (т.е. музыка)

В идеале это файл вида

Title........: More
Artist......: Junkie XL
Genre.....: House
Reldate...: 06-Sep-2007
Label.......: Andorfine Records
Bitrate.....: 320

Из них нужно выдернуть

Название релиза (More)
Исполнитель (Junkie XL)
Стиль (House)
Дата релиза (06-Sep-2007)
Лейбл (Andorfine Records)
Битрейт (320)

Но как правило в действительности кроме кучи мусора в этих файлах каждый файл по своему написан

например строка Title........: More может быть

Title........ More
Title More
Title -> More
Title ........ More
Title - More
Title ] More
Title H More

регулярка вида

$sm = '[a-z0-9\.\'\-&_\(\)\/!,;]';
$r = '/title.*:\s*(((' . $sm . '\s)|(' . $sm . '))*)/i';

хоть и написана глупо но ищет более менее

подскажите правильную регулярку
 

Beavis

Banned
ты сначала словами опиши алгоритм что должна делать нужная регулярка - только ОЧЕНЬ подробно... вот когда этот вопрос решишь, тогда может и сможешь составить
 

Фанат

oncle terrible
Команда форума
sylord
вместо того, чтобы искать суперуниверсальное гениальное решение с искусственным интеллектом, причем для использования ровно один раз - лучше бы давно уже своей регуляркой отпарсил то, что ей парсится, а остальные случаи разобрал руками, или составив новые правила.
 

melo

однажды
была подобная задача и наиболее правильным решением, есть решение *****а, выделите множество наиболее часто встречающихся строк, отпарсите и перемистите файлы, остальное руками.
 

sylord

Новичок
*****
я так и сделал и добавил всю музыку. просто хотелось этот скрипт кроном повесить чтобы тот кта занимается музыкой просто каждый день сливал ее в определенную папку. всем спасибо за помощь. тему можно закрывать.
 
Сверху