На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
    > CL-PPCRE & LISP
      Я в лиспе не очень разбираюсь. Мне нужно распарсить текст. Для этого хочу использовать cl-ppcre, но никак не соображу как же ей пользоваться. Например:
      ExpandedWrap disabled
        (setf q "123,A17, 201,10")
        (print (cl-ppcre:scan "(.*?),(.*?),(.*?),(.*?)" q))


      В итоге выводится 0.
      в шелл-режиме выдается более менее понятные значения.
      ExpandedWrap disabled
        [9]> (cl-ppcre:scan "(.*),(.*),(.*),(.*)" s)
        0 ;
        14 ;
        #(0 4 8 12) ;
        #(3 7 11 14)

      Как получить индексы в виде переменных?

      Добавлено
      нагуглил решение. Хотя не совсем понимаю что за multiple value lists...
      ExpandedWrap disabled
        (set 'l
         (multiple-value-bind (f r)
          (cl-ppcre:scan-to-strings "(.*),(.*),(.*),(.*)" q)
          (list (aref r 0) (aref r 1) (aref r 2) (aref r 3))
         )
        )
      1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0161 ]   [ 14 queries used ]   [ Generated: 19.05.24, 04:34 GMT ]