明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1065|回复: 15

[提问] 消除前面的0

[复制链接]
发表于 2023-6-5 13:43:42 | 显示全部楼层 |阅读模式
怎么框先所有数字把前面的0去掉呀?

本帖子中包含更多资源

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

x
发表于 2023-6-5 14:42:54 | 显示全部楼层
(float 005.26)
返回 5.26
回复 支持 1 反对 0

使用道具 举报

发表于 2023-6-5 17:10:40 | 显示全部楼层
  1. (defun c:TT (/ P1 P2 SS I TXT TXT1 E)
  2.   (SETQ        P1  (GETPOINT "\n选择第一点")
  3.         p2  (getcorner p1 "\n选择第二点")
  4.   )
  5.   (setq ss (ssget "c" P1 P2 '((0 . "*TEXT"))))
  6.   (IF (NOT SS)
  7.     (VL-EXIT-WITH-VALUE 0)
  8.   )
  9.   (setvar 'QAFLAGS 1)
  10.   (command "explode" ss "")
  11.   (setvar 'QAFLAGS 0)
  12.   (setq ss (ssget "c" P1 P2 '((0 . "*TEXT"))))
  13.   (SETQ I 0)
  14.   (IF (NOT SS)
  15.     (VL-EXIT-WITH-VALUE 0)
  16.   )
  17.   (repeat (sslength ss)
  18.     (setq e    (SSNAME SS I)
  19.           txt  (cdr (ASSOC 1 (entget e)))
  20.           txt1 txt
  21.           i    (1+ I)
  22.     )
  23.     (WHILE (= "0" (SUBSTR TXT1 1 1))
  24.       (SETQ TXT1 (vl-string-left-trim "0" TXT1))
  25.     )
  26.     (ENTMOD (SUBST (CONS 1 TXT1) (CONS 1 TXT) (ENTGET E)))
  27.   )
  28.   (PRINC)
  29. )



应该问题不大了
发表于 2023-6-6 13:18:48 | 显示全部楼层
(defun c:tt ()
(if (setq ss (ssget '((0 . "TEXT"))))
  (repeat (setq i (sslength ss))
   (setq ent (entget(ssname ss (setq i (1- i)))))
   (setq txt (cdr(assoc 1 ent)))
   (setq j 1)
   (while (= (substr txt j 1) "0") (setq j (1+ j)))
   (entmod (subst (cons 1 (substr txt j)) (assoc 1 ent) ent))
  )
)
(princ)
)
发表于 2023-6-5 14:22:36 | 显示全部楼层
刚才试了一下,简单的查找替换就可以了。
编辑-查找,查找内容:00,替换为:空着不填,就可以了。
然后如果还有,就是那个0-6.31的,查找内容:0-,再替换一次就行了。
发表于 2023-6-5 14:25:59 | 显示全部楼层
不用程序的,find更好用,因为你这是mtext,如果是text单行文本,写个插件还简单点

本帖子中包含更多资源

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

x
 楼主| 发表于 2023-6-5 14:52:05 | 显示全部楼层
liuhe 发表于 2023-6-5 14:25
不用程序的,find更好用,因为你这是mtext,如果是text单行文本,写个插件还简单点

如果数值中间有0的也会被替换掉,这样数值的大小值就变了
 楼主| 发表于 2023-6-5 14:53:26 | 显示全部楼层
liuhe 发表于 2023-6-5 14:25
不用程序的,find更好用,因为你这是mtext,如果是text单行文本,写个插件还简单点

如果数值中间有0的也会被替换掉,这样数值的大小值就变了
发表于 2023-6-5 15:26:25 | 显示全部楼层
戏男 发表于 2023-6-5 14:53
如果数值中间有0的也会被替换掉,这样数值的大小值就变了

你这更麻烦了,先确定能不能改成单行文本吧,多行文本更复杂
 楼主| 发表于 2023-6-5 16:13:29 | 显示全部楼层
liuhe 发表于 2023-6-5 15:26
你这更麻烦了,先确定能不能改成单行文本吧,多行文本更复杂

这是单行文字的呀
发表于 2023-6-5 16:30:47 | 显示全部楼层
戏男 发表于 2023-6-5 16:13
这是单行文字的呀

你的文字是多行的,全是mtext,只是把宽度缩小,看着是单行,dxf码显示是多行文字
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-16 20:22 , Processed in 0.189076 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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