Неверный вывод результата применения регулярного выражения.

Помощь пользователям в работе с программой E-Trade PriceList Importer
Ответить
Ixenon
Сообщения: 743
Зарегистрирован: 19 ноя 2011 09:03

Здравствуйте, уважаемые разработчики!
1.jpg
1.jpg (51.62 КБ) 2992 просмотра
На картинке видно, что строка найденная вторым регулярным выражением повторена в результате 2 раза. Так же между повторениями присутствует строка "VTXPLR"
В связи с этим возник вопрос, имеется ли возможность исправить эту ошибку?
В результате выполнения второго регурярнго выражение должно получится только то, что выделено желтым цветом на картинке ниже:
2.jpg
2.jpg (25.21 КБ) 2992 просмотра
Другими словами в результате применения 2х регулярных выражений
(OCZ) и (((AGT)|(OCT)|(SLD)|(VTX)|(VTXPLR))([0-9][-a-z0-9]+))
к наименованию: "ЖЕСТКИЙ ДИСК OCZ VERTEX PLUS R2 VTXPLR2-25SAT2-120G, 120ГБ, SSD, SATA II"
должна получиться следующая строка:
OCZ VTXPLR2-25SAT2-120G
а получается такая:
OCZ VTXPLR2-25SAT2-120GVTXPLRVTXPLR2-25SAT2-120G
Ixenon
Сообщения: 743
Зарегистрирован: 19 ноя 2011 09:03

Со скобками этими аццкая засада прям какая то, это задумано так? Если да, то объясните пожалуйста для какой цели.
Если регулярное выражение в одних скобках написать, то все хорошо:
1.jpg
1.jpg (98.85 КБ) 2980 просмотров
Если регулярное выражение в двойных скобках написать, то результат дублируется:
2.jpg
2.jpg (103.75 КБ) 2980 просмотров
Если регулярное выражение в двойных скобках написать, то результат растраивается:
3.jpg
3.jpg (101.34 КБ) 2980 просмотров
А тут(да и не только тут) хоть десять скобок делай результат один:
4.jpg
4.jpg (21.13 КБ) 2980 просмотров
Уважаемые разработчики, подскажите хоть какое нужно регулярное выражение составить, чтобы из наименований
МОНИТОР ЖК AOC F22 21.5" BLACK
МОНИТОР ЖК AOC F22 + 21.5" BLACK
получились соотвественно наименования
AOC F22
AOC F22 +
?

P.S. У меня получилось регулярное выражение такое, но оно в ПЛИ не работает
5.jpg
5.jpg (21.72 КБ) 2980 просмотров
хотя должно бы работать иначе зачем в справочном руководстве давать ссылку на этот сайт для тестирования регулярных выражений?
Да и на сайте МСДН никаких упоминаний о размножении результата регулярного выражения в зависимости от количества скобок ограничивающих это выражение, ничего не написано.
RadLast
Сообщения: 7
Зарегистрирован: 04 авг 2009 19:01

Попробуйте такое выражение. Должно работать в пли с обоими моделями.
(AOC\s[-+0-9a-z]+\s[+]?)
Ixenon
Сообщения: 743
Зарегистрирован: 19 ноя 2011 09:03

RadLast писал(а):Попробуйте такое выражение. Должно работать в пли с обоими моделями.
(AOC\s[-+0-9a-z]+\s[+]?)
Огромное спасибо! Действительно - все гениальное просто. А саму что то и в голову даже не пришло.
Еще раз огромное спасибо!

Тем не менее все равно не понятно почему такая ситуация со скобочками происходит.
А разработчики молчат как партизаны :)
Ответить

Вернуться в «Техническая поддержка программы E-Trade PriceList Importer»