请教几个问题!谢谢!
请教几个问题!谢谢!1. 如何替换文字里的*号?比如说500*500,我想改为500x500,如何编程?
2. 如何替换文字里的@号?比如说500@500,我想改为500x500,如何编程?
3. 有没有把两个选择集合并的命令?找了半天未找到,只好遍求。
查找替换 12用查找替换,源码明经里边也很多。3貌似有,不过我忘了,个人觉得遍历更好一些。 1(defun c:tt ()
(if (setq ss (ssget '((0 . "TEXT") (1 . "*`*")))) (progn
(foreach x (mapcar 'cadr (ssnamex ss))
(setq ent (entget x))
(setq txt (cdr(assoc 1 ent)))
(setq txt (vl-string-subst "*" "X" (cdr(assoc 1 ent))))
(entmod (subst (cons 1 txt) (assoc 1 ent) ent))
)
))
(princ)
)
2(defun c:ttt ()
(if (setq ss (ssget '((0 . "TEXT") (1 . "*`@")))) (progn
(foreach x (mapcar 'cadr (ssnamex ss))
(setq ent (entget x))
(setq txt (vl-string-subst "@" "X" (cdr(assoc 1 ent))))
(entmod (subst (cons 1 txt) (assoc 1 ent) ent))
)
))
(princ)
)
3(defun addsel (s1 s2)
(command "select" s1 s2 "")
(ssget "P")
) 感谢版主zzxxqq!最后一个程序真是巧妙!谢谢!
也谢谢其他各位!
页:
[1]