Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Подскажите регулярное выражение / 9 сообщений из 9, страница 1 из 1
03.03.2012, 18:26
    #37689815
dimon71
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите регулярное выражение
Добрый день форумчане!
Запутался я совсем.

У меня есть строка '12223 USB Flash Transcend Super Edition 32 Gb'
Как регулярным выражением подобрать два или три слова (без цифр и -) подряд, но не содержащие USB, flash, Transcend?
т.е. в данном случае нужно выбрать 'Super Edition'

А в случае '12223 USB Flash Transcend Super Edition Black 32 Gb' - 'Super Edition Black'

Использую объект
Set objRegExp = CreateObject("VBScript.RegExp")
...
Рейтинг: 0 / 0
03.03.2012, 19:21
    #37689850
Algol36
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите регулярное выражение
dimon71,

Код: c#
1.
\b[a-zA-Z]+\b(?<!USB|flash|Transcend)
...
Рейтинг: 0 / 0
03.03.2012, 20:24
    #37689897
dimon71
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите регулярное выражение
Algol36dimon71,

Код: c#
1.
\b[a-zA-Z]+\b(?<!USB|flash|Transcend)



Не работает. Я не находил в описании этого класса конструкции ?<!
http://www.script-coding.com/WSH/RegExp.html
Есть конструкция ?!
Но тоже не могу ей воспользоваться. Не работает.
...
Рейтинг: 0 / 0
03.03.2012, 22:37
    #37690000
Algol36
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите регулярное выражение
dimon71,

Хорошо, не работает обратный поиск, можно воспользоваться прямым:
Код: c#
1.
(?!USB|flash|Transcend)\b[a-zA-Z]+\b


Прямой поиск точно есть, согласно вашей ссылке.
...
Рейтинг: 0 / 0
03.03.2012, 23:53
    #37690067
dimon71
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите регулярное выражение
Algol36,

Да, спасибо, так лучше.
Я немного доработал
((?!USB|flash|transcend)(\b[a-zA-Z]+\b\s*)){2,4}
...
Рейтинг: 0 / 0
08.03.2012, 15:06
    #37696444
dimon71
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите регулярное выражение
Добрый день уважаемые!
А есть ли способ найти регулярным выражением и вырезать найденное:

Источник: "Мышь A4 Tech 720" а может быть "Мышь A4Tech 720"

нужно вырезать "A4 Tech" или "A4Tech" соответственно.

Образец для вырезания может быть "A4tech", а может быть "A4 Tech"

Если образец "A4 Tech", то тут все просто. Меняем пробел на \s+ и будет найдено и "A4 Tech" и "A4Tech".
Но вот как быть если образец "A4Tech"?

Убрать все пробелы в источнике можно, и вырезать можно, но как восстановить пробелы после вырезания?
...
Рейтинг: 0 / 0
08.03.2012, 20:47
    #37696656
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите регулярное выражение
dimon71Но вот как быть если образец "A4Tech"?Вместо + ставим * , т.е.:
Код: php
1.
A4\s*Tech
...
Рейтинг: 0 / 0
08.03.2012, 23:48
    #37696764
dimon71
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите регулярное выражение
Usman,

Да. Все верно. Это я ошибся просто. Конечно *.

Вопрос не в том.
Нужно искать производителей товаров с двумя словами в названии (Silicon Power, A4 tech, Mode Com) в названии товаров (a4 tech ok 720, Mode com E 2323).
Причем неизвестно слитно или раздельно напишут производителя, и неизвестно слитно или раздельно напишут название производителя в названии товара. Т.е нужно искать и A4tech и A4 Tech в ..... A4Tech .... и в ....A4 tech......

Решил преобразованием производителя к виду A\s?4\s?t\s?e\s?c\s?h\s?
Не очень изящно но видимо единственный способ.
...
Рейтинг: 0 / 0
09.03.2012, 00:18
    #37696801
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите регулярное выражение
dimon71Решил... Не очень изящно Можно сделать в два захода:
- replace 'ом привести к нужному виду
- match 'ить единым паттерном

P.S.
Исходный вид и порядок входных данных не полностью описаны
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Подскажите регулярное выражение / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]