hydkot99 发表于 2009-12-1 13:29:00

[求助]大小写转换的LSP源码

<p>哪位能提供大小写英文字母转换的LSP源码供学习啊,不胜感谢</p><p>要求TEXT和MTEXT都能转换</p>

samshs 发表于 2010-4-20 14:15:00

<p>以前見過有 你在论談找一下</p>

szboy 发表于 2011-1-28 19:39:03

(Defun c:dx ( / case)
(command "redraw")
(setq fil (ssget))
(setq case (getint "\n 改成(1)小写 / <直接回车为大写>:"))       

(setq len (sslength fil))
(setq n 0)

(while (<= n (- len 1))
(progn
   (setq e (ssname fil n))
   (cond
      ((= "TEXT" (cdr (assoc 0 (setq ed (entget e)))))
          (progn

         (setq ostr (cdr (assoc 1 ed)))
         (setq nstr (strcase ostr case))
         (setq ed (subst (cons 1 nstr) (assoc 1 ed) ed))
         (setq n (+ 1 n))
         (entmod ed)
          ))
      ((= "MTEXT" (cdr (assoc 0 (setq ed (entget e)))))
          (progn

         (setq ostr (cdr (assoc 1 ed)))
         (setq nstr (strcase ostr case))
             (setq lenstr (strlen nstr))
            (setq m 1)
            (while (< m lenstr)
                (if (= "\\p" (substr nstr m 2))
                  
                     (setq nstr (strcat (substr nstr 1 m) "\P" (substr nstr (+ 2 m))))
               ;(setq m (+ 1 m))   
                )
               (setq m (+ 1 m))
            )

         (setq ed (subst (cons 1 nstr) (assoc 1 ed) ed))
         (setq n (+ 1 n))
         (entmod ed)
          ))
       (T (setq n (+ 1 n)))
    )
   )
)
princ)

pop159 发表于 2011-2-4 16:49:53

太强了!

vladimirputin 发表于 2019-8-29 14:55:23

非标好的资料,谢谢楼主分享的。

注册 发表于 2019-8-30 07:56:08

感觉这个自己平时不是太用得到呢

ketxu 发表于 2019-11-4 12:14:10

You might find tcase.lsp in express tool folder for learning purpose ^^

qssq 发表于 2019-11-14 11:28:39

下载过类似的,看看这个
页: [1]
查看完整版本: [求助]大小写转换的LSP源码