找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1695|回复: 13

[求助] [求助]:求一个多次文字替换的工具

[复制链接]
发表于 2007-11-10 22:17:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我想把图纸上,用框选的办法
把所有带有%%131的文字替换为%%132
G替换为N,LL替换为L,等等
如果用一个lisp实现多个替换呢??
请高手帮忙!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2007-11-10 23:25:46 | 显示全部楼层
find
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

发表于 2007-11-11 08:21:32 | 显示全部楼层
http://www.xdcad.net/forum/showthread.php?s=&threadid=500904

  1.   [FONT=courier new]
  2. ;;;支持中文,空格
  3. (defun c:test (/ n s1 ss tornil tx1 txt1 txt2)
  4.   (p-s nil t)
  5.   (setq txt1 (ustr 7 "旧文字" txt1 nil)
  6.         txt2 (ustr 7 "新文字" txt2 nil)
  7.         n -1
  8.   )
  9.   (setq tx1 (ukword 1 "1 2" "选择集:1-整个文档/2-当前选择集" tx1))
  10.   (cond
  11.     ((= tx1 "1")
  12.       (setq ss (ssget "x" '((0 . "*text"))))
  13.     )
  14.     ((= tx1 "2")
  15.       (setq ss (ssget '((0 . "*text"))))
  16.     )
  17.   )
  18.   (while (setq s1 (ssname ss (setq n (1+ n))))
  19.     (if (setq tornil (th-str-repl txt1 txt2 (txt-get-dxf 1 s1)))
  20.       (txt-sub-upd s1 1 tornil)
  21.     )
  22.   )
  23.   (p-e)
  24. )
  25.   [/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-11-11 20:49:25 | 显示全部楼层
楼上老大,你写的什么啊???
根本不能用啊???
帮帮忙,给我写一个格式型的程序,
就是把框选的A全部改成B,C全部改成D,E全部改成F
可以吗??谢谢了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-11-11 20:55:18 | 显示全部楼层
楼上老大,你写的什么啊???
根本不能用啊???
帮帮忙,给我写一个格式型的程序,
就是把框选的A全部改成B,C全部改成D,E全部改成F
可以吗??谢谢了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-11-12 09:07:25 | 显示全部楼层
通用函数,要下载裤啊

[PHP]
;;楼主搞结构的吧。偶也是!
(defun c:td (/ DATA ELST SS V1 VAL)
  ;;ss->elst选择集->图元表
  (defun ss->elst (ss / elst)
    (setq i 0)
    (repeat (sslength ss)
      (setq elst (cons (ssname ss i) elst)
            i         (1+ i)
      )
    )
    (reverse elst)
  )
;;;  把所有带有%%131的文字替换为%%132
;;;  G替换为N,LL替换为L,等等.
  (setvar "cmdecho" 0)
  (command "._undo" "be")
  (if (setq ss (ssget '((0 . "*TEXT"))))
    (progn
      (setq elst (ss->elst ss))
      (foreach e elst
        (setq data (entget e))
        (setq v1 (cdr (assoc 1 data)))
        ;;以下是替代的过程,可自行修改
        (setq val (vl-string-subst "%%132" "%%131" v1))
        (setq val (vl-string-subst "N" "G" val))
        (setq val (vl-string-subst "L" "LL" val))
        (setq data (subst (cons 1 val) (assoc 1 data) data))
        (entmod data)
      )
    )
  )
  (command "._undo" "en")
  (setvar "cmdecho" 1)
  (princ)
)

[/PHP]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-11-12 10:19:33 | 显示全部楼层
也是应一个朋友的要求写的
不记得什么时候写的了
也许是你需要的
自己看看吧


[php]
(defun Glisp_upd (ename code #new)
  (setq        cc (subst (cons code #new)
                  (assoc code (entget ename))
                  (entget ename)
           ) ;_ 结束subst
  ) ;_ 结束setq
  (entmod cc)
  (entupd ename)
) ;_ 结束defun

(defun c:test (/ ename n neirong new old ss cc)

;;;  全图执行时将分号移到下面的语句上
;;;  (setq ss (ssget "x" '((0 . "TEXT")))
  
  ;;以下为选择执行
  (setq        ss (ssget '((0 . "TEXT")))
        n  0
  ) ;_ 结束setq
  (mapcar '(lambda (x)
             (setq new (car x)
                   old (cdr x)
             ) ;_ 结束setq
             (while (setq ename (ssname ss n))
               (setq neirong (cdr (assoc 1 (entget ename))))
               ;;以下只执行一次替换,如果替换字符串中所有内容,将下句中的if换成while
               (if (vl-string-search old neirong)
                 (setq neirong (vl-string-subst new old neirong))
               ) ;_ 结束if
               (setq n (1+ n))
               (Glisp_upd ename 1 neirong)
             ) ;_ 结束while
             (setq n 0)
           ) ;_ 结束lambda
          ;;以下为填空内容,把1替换成0,3替换成2
          (list (cons "0" "1") (cons "2" "3"))
  ) ;_ 结束mapcar
  (princ)
) ;_ 结束defun

[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-11-12 11:37:59 | 显示全部楼层
文字修改大师的ddctt可以!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-11-13 13:21:05 | 显示全部楼层
好好学习CAD,天天向你学lisp“
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-11-13 17:13:55 | 显示全部楼层
传个LISP给你,绝对的好用!!!!

cad加载ap一个lisp程序!!!

然后绘图命令就是cht
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-11-24 11:02:10 | 显示全部楼层
不能通用
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-7-28 13:08:31 | 显示全部楼层
用不来啊,郁闷
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 8977个

财富等级: 富甲天下

发表于 2008-7-31 23:08:01 | 显示全部楼层
修改文字LISP,试试看是不是你需要的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-8-1 11:10:49 | 显示全部楼层
要能多重替换就好了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-16 16:32 , Processed in 0.334782 second(s), 58 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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