字符串转变量
本帖最后由 刘炎华 于 2024-7-6 23:40 编辑请教一下大家,字符串如何转变量?
(setq blkname "A4")
(setq blktag "零件号")
刘炎华 发表于 2024-7-7 10:58
是这样改吗?
(set (read "blkname") "A4")
(set (read "blktag") "零件号")
(defun getva(en attname / return e test ent)
(setq e en return nil test t)
(while(and test(setq e(entnext e)))
(setq ent(entget e))
(cond
((not(=(cdr(assoc 0 ent))"ATTRIB"))(setq test nil))
((=(cdr(assoc 0 ent))"SEQEND")(setq test nil))
((=(cdr(assoc 2 ent))attname)(setq return(cdr(assoc 1 ent))test nil))
)
)
return
)
(setq ss(ssget "x" '((0 . "INSERT")(2 . "A4"))))
(setq es(vl-remove-if 'listp(mapcar 'cadr(ssnamex ss))))
(setq vs(mapcar '(lambda(x)(getva x "零件号"))es)) 请教一下大家,字符串如何转变量? ;;; (set (read "字符串")值)
_$(set (read "A4") "零件号")
"零件号"
_$ (set (read "A5") 1234.56)
1234.56
_$ a4
"零件号"
_$ a5
1234.56
本帖最后由 刘炎华 于 2024-7-7 11:01 编辑
yshf 发表于 2024-7-7 09:41
;;; (set (read "字符串")值)
_$(set (read "A4") "零件号")
"零件号"
是这样改吗?
(set (read "blkname") "A4")
(set (read "blktag") "零件号")
这个工具原来是要选择属性块对应的标记,想改成指定的块和标记(不用选择了)
页:
[1]