请指点,怎么把文字分开表示?
假如输入一段文字“明经CAD社区”,怎么把该文字分开输出“明”“经”“C”“A”“D”“社”“区”。 本帖最后由 Gu_xl 于 2013-7-9 20:00 编辑(defun splitstr (str / strlst a l)
(setq strlst (VL-STRING->LIST str))
(while strlst
(setq a (car strlst) strlst (cdr strlst))
(if (< a 176)
(setq l (cons (list a )l))
(setq l (cons (list a (car strlst)) l)
strlst (cdr strlst)
)
)
)
(mapcar 'VL-LIST->STRING (reverse l))
) Gu_xl 发表于 2013-7-9 19:47 static/image/common/back.gif
谢谢,问题解决了。 来个传统的
(defun splitstr (str / strlst a i)
(setq i 1)
(while (< i (strlen str))
(if (< (ascii (setq a (substr str i 1))) 176)
(setq strlst (cons a strlst) i (1+ i))
(setq strlst (cons (substr str i 2) strlst) i (+ i 2))
)
)
(mapcar 'prin1 (reverse strlst)) (print)
;(reverse strlst)
)
页:
[1]