明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: lxdz443

[已解答] 关于字符串过滤的问题请教大家。

[复制链接]
发表于 2015-11-26 19:24:30 | 显示全部楼层

字符串另类分解?

本帖最后由 llsheng_73 于 2015-11-26 23:28 编辑
琴剑江山_10184 发表于 2015-11-23 11:50
不知道是不是要这样的效果

  1. (defun strsplit(str splits / i a l)  (while(<""str)
  2.     (if(vl-remove'nil(mapcar'(lambda(x)(vl-string-search x str))splits))
  3.       (setq i(car(vl-sort(vl-remove'nil(mapcar'(lambda(x)(if(setq l(vl-string-search x str))(cons l x)))splits))
  4.                          '(lambda(s1 s2)(<(car s1)(car s2)))))
  5.             a(cons(substr str 1(car i))a)
  6.             str(substr str(+(car i)(strlen(cdr i))1)))
  7.       (setq a(cons str a)str"")))
  8.   (reverse a))
  9. (defun tt(str)(apply'append(mapcar'(lambda(x / a b c)
  10.                                      (setq a(STRSPLIT x'("*"))c(if(cadr a)(atoi(cadr a)))a(car a)b nil)
  11.                                      (if(> c 0)(repeat c(setq b(cons a b)))(list a)))
  12.                                   (STRSPLIT str'("+")))))
  13. (defun c:tt(/ str)(if(>(setq str(getstring"\n测试:"))"")(tt str)))


(tt"A+B*2+C+D*E+F*3")==>("A" "B" "B" "C" "D" "F" "F" "F")

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2015-11-26 21:43:27 | 显示全部楼层
llsheng_73 发表于 2015-11-26 19:24

73哥出手就是不一样了,学习了
 楼主| 发表于 2015-11-27 22:50:53 来自手机 | 显示全部楼层
琴剑江山_10184的程序还没完全理解呢,73哥的程序和看天书一样了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-21 00:55 , Processed in 0.237128 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表