找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 809|回复: 6

[编程申请]:将以斜杠/开头且含字符]的字符串加上前缀Z

[复制链接]
发表于 2005-3-8 12:05:07 | 显示全部楼层 |阅读模式

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

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

×
求一lsp程序,将以斜杠/开头且含字符]的字符串加上前缀Z,如将/3]20变成Z3]20,如不以斜杠/开头
但含/含]如3]30/3]20则不得变化,能全选,谢谢。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 11233个

财富等级: 富甲天下

发表于 2005-3-8 19:40:11 | 显示全部楼层
加字母Z
[php]
(DEFUN C:ADD-Z ()
(PRINC "\nPlease Select Text(s) 请选择文字 :")
(SETQ SS (SSGET "X" '((0 . "TEXT")))
       I 0)
(REPEAT (SSLENGTH SS)
  (SETQ ENT (ENTGET (SSNAME SS I)) I (1+ I)
        STR (CDR (ASSOC 1 ENT)))
  (IF (AND (WCMATCH STR "/*") (WCMATCH STR "*]*")) (PROGN
   (SETQ ENT (SUBST (CONS 1 (STRCAT STR "Z" STR)) (CONS 1 STR) ENT))
   (ENTMOD ENT)
  ))
)
(PRINC)
)
[/php]
减字母Z
[php]
(DEFUN C:DEL-Z ()
(PRINC "\nPlease Select Text(s) 请选择文字 :")
(SETQ SS (SSGET "X" '((0 . "TEXT")))
       I 0)
(REPEAT (SSLENGTH SS)
  (SETQ ENT (ENTGET (SSNAME SS I)) I (1+ I)
        STR (CDR (ASSOC 1 ENT))
        SL (STRLEN STR))
  (IF (AND (WCMATCH STR "Z/*")) (WCMATCH STR "*]*")) (PROGN
   (SETQ ENT (SUBST (CONS 1 (SUBSTR STR 2 (1- SL)) (CONS 1 STR) ENT))
   (ENTMOD ENT)
  ))
)
(PRINC)
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-9 12:29:24 | 显示全部楼层
ADD-Z 可用,但如 /2]20 变成了 /2]20Z/2]20 ,而我要求如 /2]20 变成 Z/2]20 请求修改,谢谢。 DEL-Z 在R2002下有语法错误。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

已领礼包: 11233个

财富等级: 富甲天下

发表于 2005-3-9 23:21:21 | 显示全部楼层
更改后程序
加字母
[php]
(DEFUN C:ADD-Z ()
(PRINC "\nPlease Select Text(s) 请选择文字 :")
(SETQ SS (SSGET "X" '((0 . "TEXT"))))
(SETQ I 0)
(REPEAT (SSLENGTH SS)
  (SETQ ENT (ENTGET (SSNAME SS I)) I (1+ I)
        STR (CDR (ASSOC 1 ENT)))
  (IF (AND (WCMATCH STR "/*") (WCMATCH STR "*]*")) (PROGN
   (SETQ ENT (SUBST (CONS 1 (STRCAT "Z" STR)) (CONS 1 STR) ENT))
   (ENTMOD ENT)
  ))
)
(PRINC)
)
[/php]
减字母
[php]
(DEFUN C:DEL-Z ()
(PRINC "\nPlease Select Text(s) 请选择文字 :")
(SETQ SS (SSGET "X" '((0 . "TEXT"))))
(SETQ I 0)
(REPEAT (SSLENGTH SS)
  (SETQ ENT (ENTGET (SSNAME SS I)) I (1+ I)
        STR (CDR (ASSOC 1 ENT))
        SL (STRLEN STR))
  (IF (AND (WCMATCH STR "Z/*") (WCMATCH STR "*]*")) (PROGN
   (SETQ ENT (SUBST (CONS 1 (SUBSTR STR 2 (1- SL))) (CONS 1 STR) ENT))
   (ENTMOD ENT)
  ))
)
(PRINC)
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2005-3-10 22:08:48 | 显示全部楼层
一个程序就够了:
[php]
;;;加载通用函数
;;;下载:http://www.xdcad.net/forum/showthread.php?s=&threadid=325268
(load "xyp_lib")
;;;替换首字母"/---"的文本为"Z----"
(DEFUN C:test ()
  (SETQ        SS (SSGET "X" '((0 . "TEXT")))
        n  -1
  )
  (while (setq s1 (ssname ss (setq n (1+ n))))
    (setq txtold (dxf 1 (entget s1)))
    (if        (= (substr txtold 1 1) "/")
      (progn
        (setq txtnew (vl-string-subst "Z" "/" txtold))
        (SUB_UPD s1 1 txtnew)
      )
    )
  )
  (PRINC)
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-3 22:42 , Processed in 0.322951 second(s), 43 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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