next up previous
Next: 3.9 データの置換 Up: 3 リスト構造の変更 Previous: 3.7 要素の削除

3.8 データの挿入

0から数えてn番目の要素になるようにデータを挿入する関数nth-insertや, n番目以降のデータとして展開して挿入する関数nth-insert-listは 以下のようになる.
<cl> (setq a '(1 2 3 4))
(1 2 3 4) 
<cl> (nth-insert 2 'x a)
(1 2 X 3 4) 
<cl> a
(1 2 X 3 4) 
<cl> (nth-insert-list 2 '(a b c) a)
(1 2 A B C X 3 4) 
<cl> a
(1 2 A B C X 3 4)
(defun nth-insert (nth data sexp)
  (let ((x (nthcdr (1- nth) sexp)))
      (rplacd x (cons data (cdr x)))
      sexp))
(defun nth-insert-list (nth data sexp)
  (dolist (x data sexp) (nth-insert nth x sexp)
          (setq nth (1+ nth))))


generated through LaTeX2HTML. M.Inaba 平成18年5月7日