明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1232|回复: 10

替换文字并删除原文本

[复制链接]
发表于 2023-1-14 00:05:06 | 显示全部楼层 |阅读模式
  1. defun c:tt7 (/ e e1 en1 en2 n)
  2.   ;被替换的文字
  3.   (setq en1 (car(entsel "\n 选择要被替换的文字:"))) ;取图元 ,下面的扩展
  4.   (setq e (entget en1)) ;取属性
  5.   (setq n (cdr(assoc 1 e))) ;取文字内容
  6.   ;源文字
  7.   (setq en2 (car(entsel "\n 选择源文字:"))) ;取图元 ,下面的扩展
  8.   (setq e1 (entget en2)) ;取属性
  9.   (setq n (cdr(assoc 1 e1))) ;取文字内容
  10.   ;替换
  11.   (setq e (subst(cons 1 n)(assoc 1 e) e))
  12.     ;重绘
  13.   (entmod e)
  14.   (command "_.erase" en2 "")
  15.   (princ)  
  16. )


发表于 2023-1-14 08:57:55 来自手机 | 显示全部楼层
感谢分享,点赞。。。
发表于 2023-1-14 09:02:45 | 显示全部楼层
  1. (defun c:tt7 (/ e e1 e2 en1 en2 n )
  2.   ;被替换的文字
  3.   (if (and  (setq  e1 (entsel "\n 选择要被替换的文字:"))
  4.       (setq  e2 (entsel "\n 选择源文字:")))
  5.     (progn
  6.   (setq en1 (car e1)) ;取图元 ,下面的扩展
  7.   (setq e (entget en1)) ;取属性
  8.   (setq n (cdr(assoc 1 e))) ;取文字内容
  9.   ;源文字
  10.   (setq en2 (car e2)) ;取图元 ,下面的扩展
  11.   (setq e1 (entget en2)) ;取属性
  12.   (setq n (cdr(assoc 1 e1))) ;取文字内容
  13.   ;替换
  14.   (setq e (subst(cons 1 n)(assoc 1 e) e))
  15.     ;重绘
  16.   (entmod e)
  17.   (entdel en2)
  18.   )
  19.   (princ "么有选的哇!")
  20. )
  21.   (princ)  
  22. )
给你改了下,加了判断更可靠。 最后删除的可以用entdel 尽量不要command
发表于 2023-1-14 09:28:03 来自手机 | 显示全部楼层
挺实用,感谢分享
发表于 2023-1-14 10:23:55 | 显示全部楼层
请问一下,这个一般是用在什么样的情况呢?
发表于 2023-1-14 20:05:06 | 显示全部楼层
谢谢楼主分享
 楼主| 发表于 2023-1-14 21:16:41 | 显示全部楼层
jun353835273 发表于 2023-1-14 09:02
给你改了下,加了判断更可靠。 最后删除的可以用entdel 尽量不要command

多谢指教!
发表于 2023-1-16 12:41:03 | 显示全部楼层
这个代码什么情况下会用,内容格式刷?
发表于 2023-1-16 15:15:02 | 显示全部楼层
有时候需要删除Source对象,有时候需要删除Target对象,有时候需要Swap两个对象的Content...
可以继续改进这个代码,实现这些不同模式的过程中切换。

一个实用的功能,可以持续在工作的实践中不断改进和扩展。上次发现有几个程序,最初是1998年写的,到现在改了十多个版本了。

点评

类似功能可以合并,并且对象可以是单行文字、多行文字、块属性。 另外还可以考虑,如果支持多选,如果源对象和目标对象数量相同,按顺序批量修改。 如果源对象包含数值,可以考虑把源对象的数值计算后写入。  发表于 2023-1-16 15:39
发表于 2023-2-6 15:52:54 | 显示全部楼层
非常不错的代码,谢谢楼主分享啊。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 07:05 , Processed in 0.177879 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表