Работа с List

Kizarek86

Lotus team
20.07.2007
864
4
#1
вот собственно покопался, но нигде ненашел ответа. Нужно следующее, есть Лист1 и Лист2, нужно получить элементы которые входят в оба листа...есть ли какие нить функции которые это делают?или придется всё таки перебором всех элементов искать?
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#2
Для: kizarek
А конкретнее? Имеют одинаковые теги, значения или всё сразу?
 

Kizarek86

Lotus team
20.07.2007
864
4
#3
Для: Medevic
Использую лист вместо массива. Т.е. Тег=Индекс, Значение=нужный нам параметр. Необходимо найти повторы только в параметрах.теги будут повторятся.
 

Kizarek86

Lotus team
20.07.2007
864
4
#4
Вот ещё 1 вопрос, как удалить элемент из Листа, если известен и Тег и Значение?
 
D

dmytro.pastovenskyi

#7
@Trim(@Replace(list1; @Replace(list1; list2; ""); ""))

если скрипт - evaluate
 

Kizarek86

Lotus team
20.07.2007
864
4
#8
Для: Omh
Иван Фёдорыч Крузенштерн...человек и параход

Ай...как то я её сразу неузрел....пропустил пардон.Лови плюсик)
 

Kizarek86

Lotus team
20.07.2007
864
4
#9
Для: dmytro.pastovenskyi
Кхм...evaluate в хелпе для списков немогу найти...какие там параметры то? что возвращает?)
 
D

dmytro.pastovenskyi

#10
Dim a(0 To 3) As String
Dim b(0 To 3) As String
Dim c As Variant

a(0) = "1" : a(1) = "2" : a(2) = "3" : a(3) = "4"

b(0) = "11" : b(1) = "2" : b(2) = "3" : b(3) = "14"

' 2 arrays are initialized here

c = Evaluate({@Trim(@Replace(@explode("} & Implode(a, "|") & {"; "|"); @Replace(@explode("} & Implode(a, "|") & {"; "|"); @explode("} & Implode(b, "|") & {"; "|"); ""); ""))})
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#12
Для: dmytro.pastovenskyi
Ну сначала надо List перегнать в массив. А потом обратно. К тому же теги по дороге растеряем.
Проще по списку пройтись и выцепить дубли.
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#14
Т.е. как индексы (теги) будут повторяться?
В принципе это решается просто и быстро. С использованием дополнительного списка.

Даже проще чем с массивом.