Выцепить данные из строки

Тема в разделе "Lotus - Программирование", создана пользователем Dragon108, 15 окт 2010.

Наш партнер Genesis Hackspace
  1. Dragon108

    Dragon108 Well-Known Member

    Регистрация:
    19 янв 2010
    Сообщения:
    265
    Симпатии:
    0
    Есть поле в документе, в нем хранятся данные в виде:

    ... | UNID | строка 1 | строка 2 | ...

    и так далее, таким образом получается большая строка, в которой данные разделены разделителями (|).
    Далее, грубо говоря, передается Unid и по нему необходимо найти в этой строке цепочку данных, относящуюся именно к этому UNIDу, т.е. обрезать все лишнее. (необходимый кускок с данными, находится правее UNIDа, до следущего UNIDа)
    Как можно вырезать данную строку из всей этой строки с данными?
    Спасибо
     
  2. Jansar

    Jansar Гость

    Получить Split-ом массив, далее перебрать его в цикле.
    а если нужно получить определенный UNID то можно с помошью ArrayGetIndex получить его индекс в массиве. и т.д
     
  3. nvyush

    nvyush Well-Known Member
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Код (LotusScript):
    tmp = StrRight (stroka, unid + "|")
    tmp2 = Split(tmp, "|")
    for i = 0 to skoka_parametrov
    print tmp2(i)
    next
     
  4. alik86

    alik86 Well-Known Member
    Lotus team

    Регистрация:
    20 ноя 2008
    Сообщения:
    465
    Симпатии:
    1
    Почитайте в хелпе про всякие Left, Right, StrLeftBack, StrRight functions и выбирайте, что Вам наиболее подходит.
     
  5. ToxaRat

    ToxaRat Чёрный маг
    Команда форума Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.137
    Симпатии:
    19
    Dragon108
    трансформ+дблукап
     
  6. VladSh

    VladSh начинающий
    Lotus team

    Регистрация:
    11 дек 2009
    Сообщения:
    1.251
    Симпатии:
    2
    А как вы собрались отличать UNID от неUNID'а, если количество символов будет совпадать?
    Поменяйте лучше формат хранения.
     
  7. Dragon108

    Dragon108 Well-Known Member

    Регистрация:
    19 янв 2010
    Сообщения:
    265
    Симпатии:
    0

    В смысле "отличать UNID от неUNID'а"? Передается UNID и по нему ищется аналогичный в этой строке.
     
  8. Darker

    Darker Гость

    Искать до какого условия? Как ты узнаешь, что все, вот до сюда мне надо?
    Храни хотя бы так

    ...%%UNID1 | строка1 | строка2 | строка3 %%UNID2 | строка1 | строка2
     
  9. nvyush

    nvyush Well-Known Member
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Если количество параметров для каждого UNID'а одинаковое, то не критично, а если разное, то для разделения блоков информации, относящихся к одному UNID'у разумеется, следует использовать другой разделитель.
     
  10. VladSh

    VladSh начинающий
    Lotus team

    Регистрация:
    11 дек 2009
    Сообщения:
    1.251
    Симпатии:
    2
    Всё равно это какой-то отстой...
    Разве нельзя разнести данные по разным айтемам с MultyValue, потом искать по айтему с UNID'ами (arrayGetIndex) и спокойно брать все нужные значения по индексу?
     
Загрузка...
Похожие Темы - Выцепить данные из
  1. ghostphisher
    Ответов:
    3
    Просмотров:
    115
  2. Петручо
    Ответов:
    3
    Просмотров:
    300
  3. drno-reg
    Ответов:
    1
    Просмотров:
    347
  4. Bafomet
    Ответов:
    3
    Просмотров:
    250
  5. maliy
    Ответов:
    37
    Просмотров:
    994

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