1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

@-комманды

Тема в разделе "Lotus - Программирование", создана пользователем NickProstoNick, 16 мар 2009.

  1. NickProstoNick

    NickProstoNick Статус как статус :)
    Lotus team

    Репутация:
    0
    Регистрация:
    22 авг 2008
    Сообщения:
    1.780
    Симпатии:
    42
    Всем привет!
    Помогите плиз/ Есть вот такой код
    Код:
    n := AuthorsID;
    @For( i := 1; i <= @Elements(n); i := i + 1;
    @If ( @Contains( n [i];"OU=SERV"); n[i] := " "; "" )
    
    );
    
    @Command( [SendInstantMessage]; n )
    В AuthorsID точно есть то что ищу и пытаюсь поменять. Но вот почуме-то не меняется (хотя услови отрабатывает)... в чем ошибка?
     
  2. Medevic

    Medevic Что это ? :)
    Lotus team

    Репутация:
    0
    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Нельзя присвоить значение отдельному элементу списка.
     
  3. NickProstoNick

    NickProstoNick Статус как статус :)
    Lotus team

    Репутация:
    0
    Регистрация:
    22 авг 2008
    Сообщения:
    1.780
    Симпатии:
    42
    хм... интересно... а вот проверять отдельный элемент списка получается можно?
     
  4. Medevic

    Medevic Что это ? :)
    Lotus team

    Репутация:
    0
    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Получается можно. :)
    Можешь почитать про @Transform.
    А можешь сделать так:
    Код:
    dummy := @ReplaceSubstring(AuthorsID; "OU=SERV"; "здесь указать что-нибудь, что не встретится в списке. можно эту строку :)");
    @Trim(@Replace(AuthorsID; dummy : AuthorsID; dummy))
     
  5. NickProstoNick

    NickProstoNick Статус как статус :)
    Lotus team

    Репутация:
    0
    Регистрация:
    22 авг 2008
    Сообщения:
    1.780
    Симпатии:
    42
    я победил... ввел строковую переменную... и клею в том же цикле то что мне надо
     
  6. Akupaka

    Akupaka А че я?.. О.о

    Репутация:
    0
    Регистрация:
    4 окт 2007
    Сообщения:
    3.360
    Симпатии:
    2
    то ли лыжи не едут... и что ты победил строковой переменной? покажи? :)
     
  7. NickProstoNick

    NickProstoNick Статус как статус :)
    Lotus team

    Репутация:
    0
    Регистрация:
    22 авг 2008
    Сообщения:
    1.780
    Симпатии:
    42
    Ну точнее не совсем строковой... ну вобщем я не знаю... с @-ми не дружу
    Код:
    n := AuthorsID;
    @For( i := 1; i <= @Elements(n); i := i + 1;
    @If ( @Contains( n[i];"App DocFlow":"OU=SERV" ); ""; m := m + n[i] + "," )
    );
    @Command( [SendInstantMessage]; @Explode( m; "," ) )
     
  8. Akupaka

    Akupaka А че я?.. О.о

    Репутация:
    0
    Регистрация:
    4 окт 2007
    Сообщения:
    3.360
    Симпатии:
    2
    ну, товарищ, ты просто элементы массива переложил в другой массив, по условию :)
    фух! лыжи едут! ;)

    к стати, там не надо сделать Trim?
    Код:
    @Command( [SendInstantMessage]; @Trim(@Explode( m; "," )) )
    еще можно так:
    Код:
    n := AuthorsID;
    @For( i := 1; i <= @Elements(n); i := i + 1;
    @If ( @Contains( n[i];"App DocFlow":"OU=SERV" ); ""; m := m : n[i])
    );
    @Command( [SendInstantMessage]; @Trim(m))
    т.е. сформировать сразу список, а не строку, может так даже быстрее...
     
  9. NickProstoNick

    NickProstoNick Статус как статус :)
    Lotus team

    Репутация:
    0
    Регистрация:
    22 авг 2008
    Сообщения:
    1.780
    Симпатии:
    42
    можно попробовать
     

Поделиться этой страницей