乐筑天下

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

[编程交流] 删除斜杠前的文本

[复制链接]

7

主题

16

帖子

9

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 22:53:02 | 显示全部楼层 |阅读模式
大家好
我有很多个人资料,和科坦测试一样
7202-14
7199\B1C-1
7193\B1C-3
7190\B1C-4
在斜杠之前,我需要一步删除每个文本
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-5 23:02:24 | 显示全部楼层
这应该只适用于单一文本,试试看,让我知道。
 
  1. (defun c:DltSlash (/ s i e st p)
  2. ;;    Tharwat 18.June.2014        ;;
  3. (princ "\n Select Text object to remove strings before slashes...")
  4. (if (setq s (ssget "_:L" '((0 . "TEXT") (1 . "*\\*"))))
  5.    (repeat (setq i (sslength s))
  6.      (setq e (entget (ssname s (setq i (1- i)))))
  7.      (if (setq p (vl-string-search "\" (setq st (cdr (assoc 1 e)))))
  8.        (entmod (subst (cons 1 (substr st (1+ p))) (assoc 1 e) e))
  9.      )
  10.    )
  11. )
  12. (princ)
  13. )
回复

使用道具 举报

7

主题

16

帖子

9

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 23:11:12 | 显示全部楼层
非常感谢,先生,我很高兴
祝你和叙利亚人民好运,我在约旦
先生,我有点犹豫
我可以删除斜杠吗?我的意思是7202\O-14,它是O-14
如果没有,我可以用现在找到和更换后,你伟大的LSP从你
 
再次感谢,先生
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-5 23:14:28 | 显示全部楼层
 
不客气,谢谢你的礼貌。
 
 
只需从例程中替换以下内容。
  1. (1+ p)

用这个。
 
  1. (+ 2 p)

 
祝你好运
回复

使用道具 举报

7

主题

16

帖子

9

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 23:22:29 | 显示全部楼层
谢谢你,先生
ITSSSS工作
谢谢你
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-5 23:29:16 | 显示全部楼层
不客气。
 
享受它。
回复

使用道具 举报

5

主题

956

帖子

963

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 23:38:53 | 显示全部楼层
谢谢Tharwat总是很有帮助的
 
试试这个,如果只是在字符串内斜杠,没有扩展名,例如:
(vl filename base“C:\\My Document\\My Profile\\My Folder\\My File”)
;“我的文件”
 
但是,如果使用扩展名示例:~\\我的文件。txt,
我有一些类似的简单代码,我们可以在最后一个斜杠之后或之前对其进行模式化,只是为了共享:
 
(\/“C:\\My Document\\My Profile\\My Folder\\My File.txt”“\\”t);最后一个斜杠后的结果
;“我的文件.txt”
 
;或
(\/“C:\\My Document\\My Profile\\My Folder\\My File.txt”“\\”无);显示在最后一个斜杠之前
;“我的文件夹”
 
  1. #hp 19/06/2014
  2. (defun \/ (_str \ after / str $ pos tx)
  3. (setq        str ""
  4. $ nil
  5. pos 1
  6. )                                        ; setq
  7. (repeat (strlen _str)
  8.    (setq tx (substr _str pos 1))
  9.    (if
  10.      (/= tx \)
  11.       (setq str (strcat str tx))       
  12.       (setq $        str
  13.      str ""
  14.       )                                ; end setq
  15.    )                                        ; end if
  16.    (setq pos (1+ pos))               
  17. )                                        ; end repeat
  18. (if after str $)                       
  19. )
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 23:41:31 | 显示全部楼层
另一种写hanhphuc的方法:
  1. (defun \/ ( s c a / p )
  2.    (if (setq p (vl-string-position (ascii c) s nil t))
  3.        (if a (substr s (+ 2 p)) (\/ (substr s 1 p) c t))
  4.        s
  5.    )
  6. )
  1. _$ (\/ "C:\\My Document\\My Profile\\My Folder\\My File.txt" "\" t)
  2. "My File.txt"
  3. _$ (\/ "C:\\My Document\\My Profile\\My Folder\\My File.txt" "\" nil)
  4. "My Folder"
回复

使用道具 举报

5

主题

956

帖子

963

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 23:48:51 | 显示全部楼层
 
李很好,只有两行就行了!曾经是LM的风格
thanx ya公司
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 23:53:14 | 显示全部楼层
不客气!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-11 03:17 , Processed in 0.531953 second(s), 72 queries .

© 2020-2025 乐筑天下

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