乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 10|回复: 5

[编程交流] 更改多行文字的字母

[复制链接]

3

主题

16

帖子

13

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-6 09:50:59 | 显示全部楼层 |阅读模式
嗨,大家好。又是我。。。
这可能吗?改变多行文字的字母?
 
实例
7-04DS23AG2、7-04DS24AG2、7-04DS25AG2、7-04DS03AG2、7-04DS04AG2、7-04DS05AG2。。。。。。等等
 
我想在一个选项中更改多行文字中的字母(示例中的粗体红色字母)。我希望可以做到。。提前感谢。。
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 10:12:28 | 显示全部楼层
为了确保可以做到这一点,您必须使用ENTGET获取实体的关联列表,使用SUBST更改字符串(存储在DXF代码1下),并调用ENTMOD来更新实体。
具有挑战性的部分将是设计修改字符串的函数——该算法取决于替换类型(按位置、按值)。
 
只要发布您的第一次尝试,就会得到帮助。
 
当做
米尔恰
回复

使用道具 举报

7

主题

340

帖子

338

银币

初来乍到

Rank: 1

铜币
37
发表于 2022-7-6 10:17:05 | 显示全部楼层
如果您只想更改这一个字母,并假设这些文字图元都在一个图形中,请转至“编辑”菜单,然后单击“查找”。这将打开一个对话框,其中有几个选项可用于查找文本或替换文本。由于所有这些数字都以“AG2”结尾,因此可以将其用作搜索字符串,并将其替换为“AX2”或“g”应该是什么。通过单击该对话框中的“选项”按钮,您可以让它搜索(或不搜索)各种类型的文本,例如块属性值、表格文本等。只需选中或取消选中该项。
105106en36jif9ig9bgxj9.jpg
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 10:31:13 | 显示全部楼层
来了,伙计。
 
如果您的字符(G)不是大写字母,则不会替换文本。
 
  1. (defun c:Test (/ Nstr ss)
  2. ; Tharwat 25. 01. 2011
  3. ; Tested withAutoCAD 2010
  4. (if (and (setq Nstr
  5. (getstring "\n Enterg the replacement Text :"))
  6. (setq ss
  7. (ssget '((0 . "TEXT,MTEXT"))))
  8. )
  9. (
  10.   (lambda (i / ss1 e str GLoc 1st 2nd all)
  11.       (while
  12.           (setq ss1
  13.    (ssname ss (setq i (1+ i))))
  14.               (setq e (entget ss1))
  15.                    (setq str
  16.      (cdr (assoc 1 e)))
  17.              (if
  18. (eq
  19.    nil (setq GLoc
  20.         (vl-string-search "G" str)))
  21.              (entupd
  22.         (cdr (assoc -1
  23.       (entmod (subst (cons 1 str)
  24.        (assoc 1 e)
  25.        e)
  26.        )
  27.       )
  28.       )
  29.         )
  30. (progn
  31.          (setq 1st
  32.   (substr str 1 GLoc))      
  33.           (setq 2nd
  34.    (substr str (+ 2 GLoc)))
  35.            (setq all
  36.     (strcat 1st Nstr 2nd))
  37.             (entupd
  38.        (cdr (assoc -1
  39.      (entmod (subst (cons 1 all)
  40.       (assoc 1 e) e)
  41.       )
  42.      )
  43.      )
  44.        )
  45.   )
  46. )
  47.                  )
  48.     )
  49.    -1
  50.    )
  51. (princ "\n No texts selected")
  52. )
  53. (princ)
  54. )

 
塔瓦特
回复

使用道具 举报

3

主题

16

帖子

13

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-6 10:48:46 | 显示全部楼层
@msasu公司
谢谢你的回复。但我是lisp编程的noob。仍在学习。无论如何,谢谢你的投入。。
 
@杰克
我从没想过。谢谢
 
@塔瓦特
很有魅力!非常感谢你。
 
给你们更多的力量,上帝保佑!
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 11:00:22 | 显示全部楼层
 
不客气,伙计。
 
塔瓦特
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-7 00:09 , Processed in 0.426391 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表