请注意,这绝不是一个可行的解决方案-上面发布的代码仅占第一部分长度为1-3个字符,并且代码将在随后的每一部分呈指数级增长,因为每个连字符的位置将取决于代码不“知道”的前几段的长度。在您到达最后一节之前,您可能会达到DIESEL表达式的最大嵌套级别。
让您了解我在说什么:对于第一部分,上面的代码检查文件名中的第二个字符是否是连字符-如果是,它将返回第一个字符-如果不是,它将检查第三个字符是否是连字符-如果是,它将返回第一个和第二个字符-如果不是,它将检查第四个字符是否是连字符......但是,对于后续部分,代码需要对之前的每个连字符执行此过程,甚至在测试终止当前部分的所需连字符的位置之前-这仍然涉及“猜测”部分的最大可能长度,否则代码将是无限长的。
LISP解决方案是您的最佳选择。 Lee,
我喜欢Lisp,但我无法调整acaddoc.lsp。我没有权利。 我可以在我的机器上使用它。但同样,我们在这里寻找的是一个交钥匙项目,我们可以将其植入模板中。 我有三个想法...
第一,
我知道你是说它会呈指数级增长..从第一个到最后一个...但是,在mannor中是否可以做到前三个是从左侧工作的。最后三个从右边开始工作? 我猜我们必须首先获得完整的字符数才能知道position position1=(字符串长度 - 1)postion2(字符串长度-2)等。
第二,
我知道..因为我们不知道工作表的全部可能长度..即1-10或4000或4000.A我们可以假设最大值为4,如果它超过这个范围,它只需要手动编辑。 大于4个字符的数字对于工作表将是罕见的。 我们无法涵盖所有可能的情况。 但。。。4、3、2 和 1 表示长度是常见的。 如果我能覆盖95%的可能性。比我仍然有一些值得一试的东西。
单位..最多3个字符
光盘1字符
类型2字符
系统3字符
编号5-7字符(我知道这个将是一个*****)
表1-4字符
我不知道DIESEL代码的最大长度是多少,但我非常确定它很长。我认为超过255字符。
了解以上信息..这很难..还是不可能?
我们将在未来2-3年内与该客户合作.每个项目每月4个项目50 dwg x 36个月...
我很难忍受..不可能的。。哎哟。。我不知道
如何通过第一-...
第三个想法
是否可以将名称转换为字符串,并将“-”转换为“,”,这会使DIESEL代码更容易吗?
附言我就是这样吝啬...我擅长打败死马。
页:
1
[2]