乐筑天下

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

[编程交流] lisp如何找到相同的te

[复制链接]

3

主题

5

帖子

2

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-5 15:53:51 | 显示全部楼层 |阅读模式
很抱歉,我在那里找到了很多话题,但直到现在都不适合我。
我要找的是一个lisp,它可以找到相同的多行文字(例如:我有多行文字28-00988_44332,它在绘图中出现了很多次),然后高亮显示/更改颜色/或使其与其他文字不同。
请帮帮我
回复

使用道具 举报

3

主题

72

帖子

61

银币

初来乍到

Rank: 1

铜币
25
发表于 2022-7-5 16:01:26 | 显示全部楼层
你需要Lisp程序吗?
 
我会临时使用QSELECT并按内容选择文本,然后在属性面板中进行更改。
 
165352vu99z5gwlp9kgpgm.png
165353lle5nunndjufndue.png
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-5 16:13:36 | 显示全部楼层
你测试了这个建议?
回复

使用道具 举报

3

主题

72

帖子

61

银币

初来乍到

Rank: 1

铜币
25
发表于 2022-7-5 16:18:28 | 显示全部楼层
 
是的,似乎与我的简单测试运行一起工作。如果文本字符串不一定是唯一的或与其他字符串类似,则可能会出现问题。
 
也就是说我最初贴错了照片。我解决了这个问题。
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 16:26:36 | 显示全部楼层
在这里搜索多行文字更改颜色BIGAL或LEE-MAC将尝试查找帖子它做你想做的事查找文字并更改颜色、字体、粗体等
回复

使用道具 举报

6

主题

49

帖子

42

银币

初来乍到

Rank: 1

铜币
32
发表于 2022-7-5 16:27:18 | 显示全部楼层
或者总是有查找和替换功能。只需键入“find”
 
使用Tapatalk从my Pixel XL发送
回复

使用道具 举报

3

主题

5

帖子

2

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-5 16:37:45 | 显示全部楼层
 
如果我使用Cad 2007,我们有lisp吗?
回复

使用道具 举报

4

主题

2143

帖子

2197

银币

限制会员

铜币
-24
发表于 2022-7-5 16:41:42 | 显示全部楼层
我已经把你的帖子转移到AutoLISP、Visual LISP和DCL论坛,如果你想要一个LISP,那就是要问的论坛。
回复

使用道具 举报

0

主题

375

帖子

385

银币

限制会员

铜币
-7
发表于 2022-7-5 16:52:24 | 显示全部楼层
从这里尝试SST lisp。也适用于MTEXT。
选择源文本,然后选择类似文本。lisp搜索源文本的精确匹配。
或者可以跳过源对象,然后指定要搜索的模式。
模式接受通配符:
-*ABC*选择包含序列ABC的所有文本
-ABC*选择以ABC开头的所有文本
-*ABC选择以ABC结尾的所有文本
有关通配符的更多信息。
注意:请记住,多行文字可以格式化,例如模式ABC*可能不会选择明显以ABC开头的对象(多行文字的真实内容可能是{fArial | b0 | i0 | c0 | p34;ABCDEF}
回复

使用道具 举报

66

主题

1552

帖子

1514

银币

后起之秀

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

铜币
325
发表于 2022-7-5 16:56:28 | 显示全部楼层
我也很开心:
 
  1. (defun C:test ( / tgassoc *error* dcl des dch dcf v c vx SS )
  2. ; Toggle associator - connect toggle value (0 or 1) with symbol value (nil or T):
  3. ; (setq tgval (tgassoc (get_tile "tg")))
  4. ; (set_tile "tg" (tgassoc tgval))
  5. (defun tgassoc ( keyorval ) (cadr (assoc keyorval '((nil "0")(T "1")("0" nil)("1" T)))) )
  6. (vl-every 'eval
  7.    '(
  8.      (cond ( (not vlax-get-acad-object) (vl-load-com) (princ) vlax-get-acad-object) (vlax-get-acad-object) ( (alert "\nVisual lisp extensions not loaded.") ) )
  9.      (setq *error*
  10.        (lambda ( msg )
  11.          (and (< 0 dch) (unload_dialog dch))
  12.          (and (eq 'FILE (type des)) (close des))
  13.          (and (eq 'STR (type dcl)) (findfile dcl) (vl-file-delete dcl))
  14.          (and msg (or (wcmatch (strcase msg) "*BREAK,*CANCEL*,*EXIT*") (princ (strcat "\nError: " msg)))) (princ)
  15.        ); lambda
  16.      ); setq *error*
  17.      (setq dcl (vl-filename-mktemp nil nil ".dcl"))
  18.      (setq des (open dcl "w"))
  19.      (foreach x
  20.        '((116 101 115 116 32 58 32 100 105 97 108 111 103)
  21.          (123 32 108 97 98 101 108 32 61 32 34 83 101 108 101 99 116 32 98 121 32 116 101 120 116 32 99 111 110 116 101 110 116 34 59)
  22.          (32 32 58 32 98 111 120 101 100 95 99 111 108 117 109 110)
  23.          (32 32 123 32 99 104 105 108 100 114 101 110 95 97 108 105 103 110 109 101 110 116 32 61 32 99 101 110 116 101 114 101 100 59)
  24.          (32 32 32 32 58 32 116 101 120 116 32 123 32 118 97 108 117 101 32 61 32 34 83 101 97 114 99 104 32 112 97 116 116 101 114 110
  25.            58 32 34 59 32 105 115 95 100 101 102 97 117 108 116 32 61 32 116 114 117 101 59 32 125
  26.          )
  27.          (32 32 32 32 58 32 101 100 105 116 95 98 111 120 32 123 32 107 101 121 32 61 32 34 101 98 34 59 32 101 100 105 116 95 119 105
  28.            100 116 104 32 61 32 50 54 59 32 125
  29.          )
  30.          (32 32 32 32 58 32 116 111 103 103 108 101 32 123 32 107 101 121 32 61 32 34 99 34 59 32 108 97 98 101 108 32 61 32 34 73 103
  31.            110 111 114 101 32 99 97 115 101 34 59 32 97 108 105 103 110 109 101 110 116 32 61 32 99 101 110 116 101 114 101 100 59 32 118
  32.            97 108 117 101 32 61 32 49 59 32 109 110 101 109 111 110 105 99 32 61 32 34 99 34 59 32 125 32
  33.          )
  34.          (32 32 32 32 115 112 97 99 101 114 59)
  35.          (32 32 125)
  36.          (32 32 58 32 98 117 116 116 111 110 32 123 32 107 101 121 32 61 32 34 115 34 59 32 108 97 98 101 108 32 61 32 34 83 101 108 101
  37.            99 116 32 62 62 34 59 32 102 105 120 101 100 95 119 105 100 116 104 32 61 32 116 114 117 101 59 32 104 101 105 103 104 116 32
  38.            61 32 50 59 32 97 108 105 103 110 109 101 110 116 32 61 32 99 101 110 116 101 114 101 100 59 32 125
  39.          )
  40.          (32 32 115 112 97 99 101 114 59 32 58 32 98 117 116 116 111 110 32 123 32 108 97 98 101 108 32 61 32 34 68 111 110 101 34 59
  41.            32 105 115 95 99 97 110 99 101 108 32 61 32 116 114 117 101 59 32 102 105 120 101 100 95 119 105 100 116 104 32 61 32 116 114
  42.            117 101 59 32 97 108 105 103 110 109 101 110 116 32 61 32 99 101 110 116 101 114 101 100 59 32 125 32 58 32 116 101 120 116 32
  43.            123 32 107 101 121 32 61 32 34 101 114 114 111 114 34 59 32 118 97 108 117 101 32 61 32 34 67 114 101 100 105 116 115 32 116
  44.            111 58 32 76 101 101 32 77 97 99 34 59 125
  45.          )
  46.          (125)
  47.        )
  48.        (princ (apply 'strcat (mapcar 'chr x)) des)
  49.      ); foreach
  50.      (not (setq des (close des)))
  51.      (< 0 (setq dch (load_dialog dcl)))
  52.      (new_dialog "test" dch)
  53.      (mapcar '(lambda (a b) (action_tile a (apply 'strcat (mapcar 'chr b))))
  54.        '("c" "eb" "s")
  55.        '(
  56.          (40 105 102 32 40 115 101 116 113 32 99 32 40 116 103 97 115 115 111 99 32 36
  57.            118 97 108 117 101 41 41 32 40 115 101 116 95 116 105 108 101 32 34 101 98 34
  58.            32 40 115 101 116 113 32 118 32 40 115 116 114 99 97 115 101 32 40 103 101 116
  59.            95 116 105 108 101 32 34 101 98 34 41 41 41 41 41
  60.          )
  61.          (40 115 101 116 95 116 105 108 101 32 34 101 114 114 111
  62.            114 34 32 34 34 41 32 40 115 101 116 113 32 118 32 36 118 97 108 117 101 41
  63.          )
  64.          (40 67 79 78 68 32 40 40 79 82 32 40 78 79 84 32 86 41 32 40 61
  65.            32 86 32 34 34 41 41 32 40 83 69 84 95 84 73 76 69 32 34 101 114
  66.            114 111 114 34 32 34 83 112 101 99 105 102 121 32 115 101 97 114
  67.            99 104 32 112 97 116 116 101 114 110 33 34 41 32 40 77 79 68 69
  68.            95 84 73 76 69 32 34 101 98 34 32 50 41 41 32 40 84 32 40 73 70
  69.            32 67 32 40 83 69 84 81 32 86 32 40 83 84 82 67 65 83 69 32 86 41
  70.            41 41 32 40 68 79 78 69 95 68 73 65 76 79 71 32 49 41 41 41
  71.          )
  72.        )
  73.      )
  74.      (= 1 (setq dcf (start_dialog)))
  75.      (progn
  76.        (setq SS (ssadd))
  77.        (vlax-for o (vla-get-Block (vla-get-ActiveLayout (vla-get-ActiveDocument (vlax-get-acad-object))))
  78.          (and
  79.            (vlax-property-available-p o 'TextString)
  80.            (setq vx (vla-get-TextString o))
  81.            (wcmatch (cond (c (strcase vx)) (vx)) v)
  82.            (ssadd (vlax-vla-object->ename o) SS)
  83.          )
  84.        )
  85.        (sssetfirst nil SS)
  86.      )
  87.    )
  88. ); and
  89. (*error* nil) (princ)
  90. ); defun C:test
  91. (vl-load-com) (princ)
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-13 20:58 , Processed in 0.387409 second(s), 74 queries .

© 2020-2025 乐筑天下

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