jijun12345 发表于 2004-3-10 16:13:00

agreee

无痕 发表于 2004-3-12 23:02:00

继续啊

Michael527 发表于 2004-3-13 11:01:00

支持

王咣生 发表于 2004-3-16 17:26:00

将输入的数据转换为字符串列表

将输入的数据转换为字符串列表,如:<BR>;Example:               (string-&gt;list "Hello World") = ("Hello" "World")<BR><BR>(defun string-&gt;list (f_string / f_ls f_str f_len f_loop f_cur) ;converts string to a list using spaces as delimitation<BR>       (setq f_ls nil<BR>        f_str ""<BR>       )<BR>       (setq f_loop 0)<BR>       (repeat (strlen f_string)<BR>                       (progn<BR>                                       (setq f_loop (1+ f_loop))<BR>                                       (setq f_cur (substr f_string f_loop 1))<BR>                                       (if (= (ascii f_cur) 32)<BR>        (if (/= f_str "")<BR>               (progn<BR>                               (setq f_ls (append f_ls (list f_str)))<BR>                               (setq f_str "")<BR>               )<BR>        )<BR>        (setq f_str (strcat f_str f_cur))<BR>                                       )<BR>                       )<BR>       )<BR>       (if (/= f_str "")<BR>                       (setq f_ls (append f_ls (list f_str)))<BR>       )<BR>       f_ls<BR>)

f5612140 发表于 2004-3-16 18:20:00

非常支持,但好東西藏在這不容易發現,建議管理員另闢版塊,置頂不易達到效果

王咣生 发表于 2004-3-17 14:40:00

回复

恩,说的有道理.

王咣生 发表于 2004-3-30 22:47:00

回复

有好的程序吗?好的设计思想也可以分享啊?!

无痕 发表于 2004-3-31 00:26:00

王咣生发表于2004-3-16 17:26:00static/image/common/back.gif回复:(王咣生)将输入的数据转换为字符串列表将输入的数据转换为字符串列表,如:;Example:   (string->list \"Hello World\") = (\"Hello\" \"World\")(defun string->list (f_string /
这也算精简?nonono;(str2lst str) 将输入的数据转换为字符串列表.-----------------------------梁雄啸.2004.3
;测试: (str2lst   "Hello 2World 12 5456.1568") = ("Hello" "2World" "12" "5456.1568")
;版权所有,盗用必究!如在程序中引用,请保留文字信息行.
(defun str2lst (str / i)
   (while (setq i (vl-string-search " " str (if i (+2 i) 0)))
       (setq str (vl-string-subst "\"\"" " " str i))
   )(read (strcat "(\"" str "\")"))
)

王咣生 发表于 2004-3-31 10:24:00

回复

谢谢!


如果不用vlisp函数你会怎么做呢?


简单到不一定,要有思想?严谨的逻辑结构?


我想你要用AutoLISP自己设计程序结构来实现VLISP现成的函数功能,那将收获很多,


就好比用MFC封装好的类和自己设计一个类一样?


当然这不一定对每个人都必要.

无痕 发表于 2004-3-31 14:38:00

本帖最后由 作者 于 2004-3-31 18:35:20 编辑

王咣生发表于2004-3-31 10:24:00static/image/common/back.gif回复:(王咣生)回复谢谢!如果不用vlisp函数你会怎么做呢?简单到不一定,要有思想?严谨的逻辑结构?我想你要用AutoLISP自己设计程序结构来实现VLISP现成的函数功能,那将收...;(str2lst str) 将输入的数据转换为字符串列表.---(纯autolspl的写法)--------------------------梁雄啸.2004.3
;测试: (str2lst   "Hello 2World 12 5456.1568") = ("Hello" "2World" "12" "5456.1568")
;版权所有,盗用必究!如在程序中引用,请保留文字信息行.
(defun str2lst (str / i strlst str1)
   (setq i 0 str1 "")
   (while (/= "" (setq s (substr str (setq i (1+ i)) 1)))
       (cond ((/= " " s) (setq str1 (strcat str1 s)))
                   (T (setq strlst (append strlst (list str1))
                     str1 "")))
   )(if (/= str1 "") (append strlst (list str1)) strlst)
)
;方法2:(defun str2lst (str / i str1)
   (setq i 0 str1 "")
   (while (/= "" (setq s (substr str (setq i (1+ i)) 1)))
       (setq str1 (strcat str1 (if (= " " s) "\" \"" s)))
   )(read (strcat "(\"" str1 "\")"))
)
页: 1 [2] 3 4 5 6 7 8 9 10 11
查看完整版本: 简约而不简单