找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1725|回复: 8

[编程申请]:批量文字加前缀工具。

[复制链接]
发表于 2007-6-7 15:22:23 | 显示全部楼层 |阅读模式

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

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

×
遇到很多相似情况。需要在一些已经有一定顺序的文字前面统一加一个字母或者字段。
比如:轴线都是1-1,1-2,1-3,1-4,。。。。需要改成,11-1,11-2,11-3,11-4,。。。。。
在比如:一组坐标,X1,X2,X3,X4,....a全部要在后面加上字母B.
类似的,同样的轴线问题,1-1,1-2,1-3,1-4,。。。需要改成2-1,2-2,2-3,。。。。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2007-6-8 23:17:44 | 显示全部楼层
(defun c:try (/ ss i s1 ent)
; (CMDLA0)
  (setq ukw (UKWORD 1 "1 2" "\n: 1-前缀/2-后缀" ukw)
        tx (USTR 1 "\n请输入前缀或后缀文字" tx nil)
        ss (ssget '((0 . "TEXT")))
        i  -1
  )
  (repeat (sslength ss)
    (setq s1 (ssname ss (setq i (1+ i))))   
(setq sss (entget s1))
    (if        (= ukw "1")
      (setq txnew (strcat tx (cdr(assoc 1 sss))))
      (setq txnew (strcat (cdr(assoc 1 sss)) tx))
    )
   (setq txt (cons 1 txnew))
    (setq sss (subst txt (assoc 1 sss) sss))
    (entmod sss)
   )
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2007-6-11 12:54:16 | 显示全部楼层
1-1,1-2,1-3,1-4,。。。。需要改成,11-1,11-2,11-3,11-
1-1,1-2,1-3,1-4,。。。需要改成2-1,2-2,2-3,。。。。  两个要求不是一回事。
(defun c:try (/ ss i s1 ent)
(setq ukw (UKWORD 1 "1 2" "\n: 1-加/2-减" ukw)
tx (USTR 1 "\n请输入加减数" tx nil)
ss (ssget '((0 . "TEXT")))
i -1
)
(repeat (sslength ss)
(setq s1 (ssname ss (setq i (1+ i))))
(setq sss (entget s1))
(setq oldtxt (cdr(assoc 1 sss)))
(setq txt1 (substr oldtxt 1 1))
(setq txt2 (substr oldtxt 2))
(if (= ukw "1")
(progn
   (setq txto (rtos (+ (atoi tx) (atoi txt1))))
   (setq txnew (strcat txto txt2))
)
(progn
  (setq txto (rtos (- (atoi txt1) (atoi tx))))
   (setq txnew (strcat txto txt2))
  )
)
(setq txt (cons 1 txnew))
(setq sss (subst txt (assoc 1 sss) sss))
(entmod sss)
)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-6-11 19:49:43 | 显示全部楼层
  1. [FONT=courier new](defun c:test ()
  2.   (CMDLA0)
  3.   (setq        ss  (ssget '((0 . "TEXT")))
  4.         ukw (UKWORD 1 "1 2 3" "1-前置加1/2-后置加B/3-前置1改2" ukw)
  5.         i   -1
  6.   )
  7.   (while (setq s1 (ssname ss (setq i (1+ i))))
  8.     (setq tx (xyp-get-dxf 1 s1)
  9.           x1 (substr tx 1 1)
  10.     )
  11.     (cond ((and (= ukw "1") (= x1 "1"))
  12.            (xyp-SUBUPD s1 1 (strcat "1" tx))
  13.           )
  14.           ((and (= ukw "2") (= x1 "X"))
  15.            (xyp-SUBUPD s1 1 (strcat tx "B"))
  16.           )
  17.           ((and (= ukw "3") (= x1 "1"))
  18.            (xyp-SUBUPD s1 1 (strcat "2" (substr tx 2)))
  19.           )
  20.     )
  21.   )
  22.   (CMDLA1)
  23. )[/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2007-6-25 18:09:32 | 显示全部楼层
(DEFUN C:ch3 ()
(prompt "\n加前后缀: ")
(setq qh (getint "\n1--加前缀,2--加后缀,<1>"))
(if (= qh nil)(setq qh 1))
(princ "\nselect object:")
(setq s (ssget))
(setq str (getstring "\n输入要加的字:"))
(setq n (sslength s))
(setq k 0 )
(while (< k n)
      (setq name (ssname s k))
      (setq a (entget name))
      (setq t1 (assoc '0 a))
      (setq t1 (cdr t1))
      (if (= t1 "TEXT") (PROGN
        (setq h (assoc '1 a))
        (setq hh (cdr h))
        (if (= qh 1)(setq  str1 (strcat str hh)))
        (if (/= qh 1)(setq str1 (strcat hh str)))
        (setq h1 (cons 1 str1))
        ;(if (= str "") (setq h1 h))
        (setq a (subst h1 h a))
        (entmod a)
        ))
      (setq k (+ k 1))
)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-21 00:45 , Processed in 0.415285 second(s), 48 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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