Страницы: 1
RSS
Выборка слов по окончанию либо удаление всего что не шаблон
 
Приветствую.
Странно вроде тема должна была подниматься, однако не нашел.
Может не там искал.

Подскажите как вывести из ячейки с текстом все значения с окончанием te, en и тд. (чтоб можно было задать)
Вариант а) удалить лишний текст оставив только тот, что соответствует условию
Вариант б) забрать слова с окончаниями.
И ограничить их вывод скажем 5-ю 10 словами, если пойдет через выборку.

Дано:
, फलति °ते (metrisch) Früchte bringen , - tragen , reifen , Folgen haben , in Erfüllung gehen - sich ergeben , resultiren (Comm. zu Nyāyam. 10,1,17) - der Frucht - , des Lohnes theilhaftig werden - Etwas (Acc.) zur Reife bringen , so v.a. erfüllen (Wünsche) , spenden - ausnahmsweise auch mit Instr. der Frucht. फलित1) Adj.a) Früchte tragend , mit Früchten versehen - Früchte gebracht - , Erfolg gehabt habend - in Erfüllung gegangen - vollständig zur Entwickelung gekommen (Kād. 59,19) - als Folge sich ergebend.b) *f. आ menstruirend.2) n. impers. mit Instr. des Subjects.- प्रति Frucht tragen , Lohn bringen Ind. St. 14,389.- वि Früchte ansetzen , zur Reife gelangen.

Получаем:
Früchte bringen , - tragen , reifen , Folgen haben , gehen ergeben , resultiren
знаки пунктуации не имеют важности, все почистим.

Спасибо.
Изменено: Kreol2013 - 07.05.2013 23:42:18
 
Так подойдет?
Учимся сами и помогаем другим...
 
Просто блеск.

Я вот таким путем начал идти, но вынимает 1 слово, и отрывает иногда 1-ю букву, не возьму в толк почему.

Код
Public Function Matchh(astring As Range, Num As Integer) As String
Dim re_Matchh As Object
Set re_Matchh = CreateObject("vbscript.regexp")
re_Matchh.Pattern = "\s?[a-z]+(hen|ern|ten|men)"
Set matches_Matchh = re_Matchh.Execute(astring)
If (matches_Matchh.Count = 0) Then
Matchh = ""
Else
Matchh = matches_Matchh(Num)
End If
End Function
 
мне конечно кажется, что с регулярками Вам наши гуру помогут и это будет проще и меньше, но я в них не силен, поэтому написал как умею :-)
Учимся сами и помогаем другим...
 
твой макрос явно уйдет в коллекцию. И его нужно добавить в "помогаторы"  :)
Спасибо еще раз.
 
Вот оно - признание  :D
Учимся сами и помогаем другим...
 
ber$erk, здоровски! Я тоже себе на вооружение возьму этот макросок.
Я соображаю, но не всегда. :-)
 
Вот так всегда, как начал использовать макрос, вспомнил, что нельзя с большой буквы слова включать.
 
ай-яй-яй  ;)
Учимся сами и помогаем другим...
 
Ай-яй-яй_2_ :evil:
- http://www.sql.ru/forum/1021631/vyborka-slov-po-okonchaniu-libo-udalenie-vsego-chto-ne-shablon
"Ctrl+S" - достойное завершение ваших гениальных мыслей!.. ;)
 
не судите строго, помогаю с кандидатской, Итак ручной работы выше крыши).
ber$erk просто зашибенчески!
 
Цитата
Z пишет:
Ай-яй-яй_2_ :evil:

А вдруг там ответят раньше.
Я года 2 назад только и постил на sql, толку было немного.
И кроме sql никуда в принципе и не заходил больше.
 
Вдруг - не вдруг, но раз Вам здесь помогли, то там необходимо отписаться, чтобы на том форуме люди не тратили время. Именно это Z хотел сказать (мне кажется).
Учимся сами и помогаем другим...
 
а, так это да, я думал, он не это имел ввиду. )
 
кажется, так:
Код
Public Function Matchh$(astring As Range)
  With CreateObject("vbscript.regexp")
    .Global = True
    .ignorecase = True
    .Pattern = "\b\w*?(hen|ern|ten|men)\b"
    Set mo = .Execute(astring)
    If mo.Count Then
      For i = 0 To mo.Count - 1
        Matchh = Matchh & " " & mo.Item(i)
      Next
    End If
  End With
End Function
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
Страницы: 1
Читают тему
Наверх