Bill Tillman 发表于 2022-7-6 07:45:25

截断文件名。。。还是没有?

我有一个任务,我将尝试使用LISP。我有理由相信我可以用INSTR命令在VBA中完成这项工作,但由于其他一些任务是用LISP完成的,我现在将尝试使用该语言。
 
我们有一些在某个地方展示的图纸,以便其中一位设计师审查。典型的文件名模式由以下5位数字组成:
 
有些图纸一旦检查发现有错误,将被命名为:
到时候,我想重命名文件并删除(待定)后缀。但正如你们所见,有时这种模式会存在,有时则不会。LISP中是否有类似于VB的INSTR命令的东西,可以识别这个模式,然后让我重新连接字符串而不包含(挂起的)文本?

BlackBox 发表于 2022-7-6 08:31:16

查看vl字符串搜索和vla SaveAs函数。
 
**编辑-哦,可能还有vl文件删除功能。

Bill Tillman 发表于 2022-7-6 08:55:40

我想我找到了我想要的wcmatch。。。。将测试此方法。。。。和vl字符串搜索。。。其中一个应该有效。
 
更新:谢谢RenderMan。。你对vl字符串搜索的建议效果很好。
 

(vl-load-com)

(defun c:approve (/ fname x)
(setq x (vl-string-search "(Pending)" (getvar "dwgname")))

(if (> x 0)
   (setq fname (strcat (substr (getvar "dwgname") 1 x) ".dwg"))
   (setq fname (getvar "dwgname"))
)

(princ); exit quietly
); end function

页: [1]
查看完整版本: 截断文件名。。。还是没有?