找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 614|回复: 2

[求助] [求助]:出学lisp,请教一个问题

[复制链接]

已领礼包: 58个

财富等级: 招财进宝

发表于 2006-8-31 11:37:32 | 显示全部楼层 |阅读模式

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

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

×
出学lisp,请教一个问题,下面一段代码,当中西文混排的时候,由于一个中文字是占两个字符的位置,所以当最后一个字是中文是,如果删除的字数为1时,就会出现问号,如何解决
;;;---------删除m个后缀------------------
(defun zgx_delsuffix (m _text)
(setq a (substr _text 1 (- (strlen _text) m)))
)
;;;;-----------在给定文字后面增加序号,序号按照1递增--------------
(defun c:ddd(/ endata i textvalue enttext n k m)
(setq i (getreal"\n请输入起始编号<默认1>:"))
(if (null i)
    (setq i 1)
)
(setq n (getint "\n请输入保留小数位数<默认0>:"))
(if (null n)
    (setq n 0)
)
(setq m (getint "\n请输入删除后缀数量<默认0>:"))
(if (null m)
    (setq m 0)
)
(setq k 1)
(while (and
         (setq enttext (entsel"\n请选择文字:"))
         (= "TEXT" (cdr (assoc 0 (entget (car enttext)))))
       )
       (if (< i 10)
       (setq textvalue
             (cons 1 (strcat (zgx_delsuffix m (cdr (assoc 1 (entget (car enttext))))) "0" (rtos i 2 n)))
       )
       (setq textvalue
             (cons 1 (strcat (zgx_delsuffix m (cdr (assoc 1 (entget (car enttext))))) (rtos i 2 n))))
       )
       (setq endata (entget (car enttext)))
       (setq endata (subst textvalue  (assoc 1 endata) endata))
       (entmod endata)
       (setq i (+ i 1))
       (setq k (+ k 1))
       (princ)
)
(princ (strcat "\n共" (rtos (- k 1)) "个文字修改完毕!"))
(princ)
)
(princ "\n以ddd启动命令!")
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 7234个

财富等级: 富甲天下

发表于 2006-8-31 12:15:49 | 显示全部楼层
(setq enttext (entsel"\n请选择文字:"))

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

使用道具 举报

已领礼包: 58个

财富等级: 招财进宝

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-18 11:42 , Processed in 0.340860 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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