|
Регулярные выражения
| ☑ |
0
Besometr
26.12.12
✎
10:30
|
Всем здрасьте!
Сразу прошу сильно не пинать, а если пинать то в нужную сторону)
Есть такие строки:
Настенный кондиционер (сплит-система) Mitsubishi Electric MS-GD80VB
Настенный кондиционер (сплит-система) Panasonic CS-E7NKD/CU-E7NKD
Пытаюсь выгрызть от туда производителя. Получается, как вы поняли, не очень(
Код:
ШаблонВыражения = "[^A-Z, a-z]";
RegExp = Новый COMОбъект("VBScript.RegExp");
RegExp.IgnoreCase = Ложь;
RegExp.Global = Истина;
RegExp.MultiLine = Ложь;
RegExp.Pattern = ШаблонВыражения;
ИсходящаяСтрока = RegExp.Replace(ВходящаяСтрока, "");
В самом лучшем случае получаю:
Mitsubishi Electric MSGDVB
Panasonic CSENKDCUENKD
Как допилить выражение что бы оставить только
Mitsubishi Electric
Panasonic
?
|
|
1
Ursus maritimus
26.12.12
✎
10:32
|
Имхо, в данном случае никак. Исходи из того что производителей конечное количество и их названия известны.
|
|
2
IVT_2009
26.12.12
✎
10:35
|
Разобрать по длине латинские наименования и составить словарь. Автоматизировать это не получится. У нас в производителя в скобках обычно указывают.
|
|
3
Мимо Проходил
26.12.12
✎
10:35
|
В данном примере выбирать начиная с большой латинской и обрывать на двух больших латинских подряд
|
|
4
IVT_2009
26.12.12
✎
10:36
|
LG не прокатит сразу. Мне кажется надо словарь сделать и ручками сопоставить. Не так и много производителей будет
|
|
5
Лефмихалыч
26.12.12
✎
10:38
|
+1 к словарю, только с китайцами можно горя хапнуть - их МОРЕ
|
|
6
Besometr
26.12.12
✎
10:38
|
(1) (2) Идея понятна, спасибо)
|
|
7
Мимо Проходил
26.12.12
✎
10:40
|
(4) 100% не даст ни один алгоритм. Я говорил про представленные примеры. LG прокатит, если первое латинское слово брать без учета контроля на двойной "shift". Но уверен, что можно найти и контрпример для этого уточнения
|
|