dbroada 发表于 2022-7-6 07:02:47

多行文字中的逆序

我刚刚拿起别人的图纸,我希望技术部门拒绝电阻值。我们通常有值,然后是额定功率。在这些图纸上,它们大多是相反的。它们都是双线多行文字实体。
 
有没有人已经/想要编写一个快速的LISP,将Text1 Text2更改为text2text1?我需要通过光标而不是选择集来选择文本,因为并非所有条目都需要更改。
 
感谢任何想要尝试的人。

Lee Mac 发表于 2022-7-6 07:24:39

假设未格式化多行文字:
 
(defun c:revmt ( / e i n s x )
   (if (setq s (ssget "_:L" '((0 . "MTEXT") (1 . "*\\P*"))))
       (repeat (setq i (sslength s))
         (setq e (entget (ssname s (setq i (1- i))))
               x (cdr (assoc 1 e))
               n (vl-string-search "\\P" x)
         )
         (entmod (subst (cons 1 (strcat (substr x (+ 3 n)) "\\P" (substr x 1 n))) (assoc 1 e) e))
       )
   )
   (princ)
)

dbroada 发表于 2022-7-6 07:53:01

我不知道为什么我要说“完美”,因为我真的没想到会有什么不同。
 
再次非常感谢李。

Lee Mac 发表于 2022-7-6 08:03:22

不用担心Dave
页: [1]
查看完整版本: 多行文字中的逆序