请问各位大侠有没有一种 LISP 在ACAD中可以将所有的英文字母进行 大 ,小 写转换。谢谢!
请问各位大侠有没有一种 LISP 在ACAD中可以将所有的英文字母
进行 大 ,小 写转换。谢谢!
2楼
(defun c:tdx (/ ents ent elst c0 flag txt)
(setq ents (ssget ((0 . "text,mtext"))))
(if (not ents) (exit))
(setq flag (getstring "\n输入任意字符--变大写 "))
(setq c0 0)
(repeat (sslength ents)
(setq ent (ssname ents c0))
(setq elst (entget ent))
(setq txt (cdr (assoc 1 elst)))
(setq txt (if (= flag "")(strcase txt T)(strcase txt)))
(princ txt)
(entmod (subst (cons 1 txt)(assoc 1 elst) elst))
(setq c0 (1+ c0))
)
(princ)
)
回复
3楼
框选实体后,任意输入一个字符-->变大写
直接回车-->变小写
回复
4楼
菜冬瓜:
谢谢你.
回复
5楼
我觉的这个 LISP 很适用。
回复
6楼
;;;*****************文字内容替代*****************
(defun c:qw ( / oce www1 www2 en1 en2 nr1 nr2 e1 e2 )
(setq oce (getvar "cmdecho"))
(setvar "cmdecho" 0)
(setq www1 (entsel "\n text-1:"))
(while (/= www2 " ")
(setq www2 (entsel "\n text-2:"))
(setq en1 (car www1))
(setq e1 (entget en1))
(setq whlnr (assoc 1 e1))
(setq en2 (car www2))
(setq e2 (entget en2))
(setq nr2 (assoc 1 e2))
(setq e2 ( subst whlnr nr2 e2))
(entmod e2)
)
(setvar "cmdecho" oce)
(princ)
)
可以把第一个文字的内容转给第二个选择的文字
回复
7楼
用在那些地方呢?》现在一般专业软件上都有大小写转换的功能。
回复
8楼
我对LISP不懂,有哪位高手说来听听??
回复
9楼
请问LISP怎么用?Acad不是自动加载吧,我到Acad的support下面,复制了一个原来的LISP,然后把上面的程序覆盖了一下,重新命名,然后试用,没有变化啊
还有用什么语言可以自编LISP?请大虾指点
回复