Страницы: 1
RSS
Удаление ненужных частей в строках
 
Столкнулся с такой проблемой-нужно удалить в названиях товаров ненужные части. Дело осложняется тем, подписаны товары подписаны по-разному, т.е. вариант удалить после третьего слова или стереть текст после столько-то знаков не подходит.    
 
Можете подсказать, как максимально оптимизировать процесс в моем случае? Для наглядности прикрепляю документ
 
и как по вашему что нибудь понятно в вашем примере ?
Редко но метко ...
 
пример не для понимания, а для наглядности.  
я вот вполне могу глядеть на него. беспроблем.
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
аналогично ))
Редко но метко ...
 
ASUS TF101G TEGRA T250/1GB/16GB/10.1"/BT/GPS/Modem 3G/Cam/ ANDROID 3.0 TRANSFORMER  
 
Вот, к примеру, первая строчка. В итоге нужно получить ASUS TF101G.  
 
А вот еще одна, пониже:  
 
HP Compaq Mini CQ10-710ER ноутбук Черный СТБ  
 
В итоге нужно получить HP Compaq Mini CQ10-710ER.  
 
Т.е. длина названий разная, количество слов в названиях - тоже разное. А нужно оставить именно названия, без характеристик. Надеюсь, теперь понятнее.
 
зря вы так надеетесь )  
 
почему "TEGRA" - относится не к названию, а к характеристике? кстати, что это за характеристика?  
 
если вы сами не хотите или не можете формализовать понятия "название" и "характеристика", то кого ждем и на что надеемся? на прилет марсиан-телепатов?
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Предлагаю, Вам 512metrov, создать список "Констант", - постоянных названий и тогда дело будет в шляпе.
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
{quote}{login=ikki}{date=23.03.2012 07:32}{thema=}{post}почему "TEGRA" - относится не к названию, а к характеристике? кстати, что это за характеристика?{/post}{/quote}  
Акелла промахнулся, конечно, Тегра относится к названию.  
 
А можно поподробнее про константы эти? Или еще есть варианты?
 
{quote}{login=512metrov}{date=23.03.2012 11:10}{thema=Re: }{post}Или еще есть варианты?{/post}{/quote}Самое простое - это научить Excel думать.  
 
ЗЫ Константы - это неизменяемые значения, в Вашем случае - это список всех названий, которые могут встречаться в списке товаров.
 
>Или еще есть варианты?  
Есть. Регулярные выражения: с начала строки, все до текста в котором идут слеши, обратные слеши, скобки или русские буквы. В данном случае процент выделения  нужных Вам данных будет достаточно высок [на первый взгляд]. Если найденная строка совпадает со строкой оригиналом - ручками : )
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
Простите, что сократил кол-во данных.
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
{quote}{login=Владимир}{date=24.03.2012 01:48}{thema=}{post}Простите, что сократил кол-во данных.{/post}{/quote}  
 
Браво!  
 
А как Вы так сделали? Подскажите, пожалуйста, где можно прочитать поподробнее.
 
{quote}{login=nerv}{date=23.03.2012 11:20}{thema=}{post}Регулярные выражения...{/post}{/quote}  
Расскажите, пожалуйста, про этот способ поподробней?
 
Если устраивает, 100 руб на один из моих кошельков ниже  
 
Function getString(ByVal text As String) As String  
   With CreateObject("vbscript.regexp")  
       .Pattern = "(?:[^(\\\/а-я]+(?:\s+|$)){1,}"
       getString = .Execute(text)(0).Value  
   End With  
End Function  
 
 
>Расскажите, пожалуйста, про этот способ поподробней?  
<EM>http://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%B3%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D1­%8B%D0%B5_%D0%B2%D1%8B%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D­1%8F</EM>
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
{quote}{login=nerv}{date=24.03.2012 01:01}{thema=}{post}Function getString(ByVal text As String) As String...{/post}{/quote}  
Здорово, конечно. Но есть такой момент-например, для Сони или Эппл названия идут со слешем, MacBook Air MC965LL/A или VAIO VPC-YB1S1E/S. Или для Асер с НР в названиях указываются артикулы - Aspire One 722-C6Ckk (LU.SFT0C.062), 635 (A1E47EA).  
 
Можно дополнить формулу, чтобы оставались нужные слэши и значения в скобках?
Страницы: 1
Читают тему
Наверх