Я - разработчик плагина XPIInfo для Total Commander. И одна из возможностей этого плагина - вывод переводчика расширения по указанному в настройках регулярному выражению. Для определения переводчика на русский я рекомендую такое выражение:

Выделить код

Код:

ru(-RU)*|((?i)Russian|русс)

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

Подскажите пожалуйста, кто хорошо в этом разбирается, выражение, которое могло бы поточнее определять переводчика, учитывая, что язык на который переводил человек может быть указан в install.rdf (откуда и берётся вся информация) в виде а) локали (ru-RU, например или просто ru); б) названия языка (русский или russian). И если со вторым вариантом всё более или менее ясно, то с первым вариантом гораздо сложнее: есть много фамилий, в которые входит слог ru...

ты лучше приведи примеры исходных строк и что из них нужно получить. думается мне символы ^ и $ спасу отца русской демократии...

Dark-Demon пишет

ты лучше приведи примеры исходных строк и что из них нужно получить. думается мне символы ^ и $ спасу отца русской демократии...

Ну например... Переводчики для Wizz RSS Reader.
Jacen (Babelzilla) - sk-SK Translation
Climenole (Babelzilla)- fr-FR Translation
Haebaru (Babelzilla) - ja-JP Translation
0815horst (Babelzila) - de-DE Translation
stoneflash (Babelzilla) - ru-RU Translation
AlleyKat (Babelzilla) - da-DK Translation
peguca (Babelzilla) - pt-BR Translation
Sonickydon (Babelzilla) - el-GR Translation
PAGF_LINUX (Babelzilla) - es-ES Translation
ZuGro (Babelzilla) - es-AR Translation
MatrixIsAllOver, Ginex (Babelzilla) - it-IT Translation
reptail (Babelzilla) - fi-FI Translation
leuce (Babelzilla) - af-ZA Translation
DRKA (Babelzilla) - be-BY Translation

Мне нужно составить выражение, которые бы позволило определить, что переводчиком на русский является stoneflash. То выражение которое я привёл даёт совпадение на неком Haebaru, который к русскому переводу имеет крайне опосредованное отношение. Как составить выражение, чтобы определить, что переводчик на русский - stoneflash?

^ и & никак не помогут...

Добавлено Втр 31 Окт 2006 16:35:43 :
Замечу, что в каждом расширении формат этих строк может быть разным...

какие ещё форматы могут быть? думается мне символ \b поможет своим собраться спасти отца русской демократии :)

Примеров больше привести не могу, поскольку под рукой не очень много расширений... На самом деле надо полагать, что ЛЮБОЙ, поскольку правил по оформлению этих строк не предусмотрено...
Хм... Может \b и поможет. Спасибо за наводку...

\b вроде помогло. Ещё раз спасибо. Если что-то будет не так - я снова обращусь. :)