找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 696|回复: 3

[求助] [求助]:分解字符”—200x6“为 200 6?

[复制链接]
发表于 2008-4-13 22:06:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
如何分解”—200x6“为 200   6?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 2个

财富等级: 恭喜发财

发表于 2008-4-14 00:25:46 | 显示全部楼层

  1. ;;;====================================================
  2. ;;;      函数三                                       
  3. ;;;功能:分割字符串,按照是否为数字分
  4. ;;;参数:STR  ----欲分割的字符串
  5. ;;;返回:分割后的表
  6. ;;;示例:(ZL-STR-SUB3 "A-11b")
  7. ;;;       ====>  ("A-" "11" "b")
  8. (defun ZL-STR-SUB3 (STR / STRI STR_TMP LST LX0 LX1)

  9.     ;;获取第一个字符
  10.     (if        (> (ascii (substr STR 1 1)) 159)
  11.         (progn
  12.             (setq STRI (substr STR 1 2)
  13.                   STR  (substr STR 3)
  14.             )
  15.             (setq LX0 1) ;0 为数字;1 为非数字
  16.         )
  17.         (progn
  18.             (setq STRI (substr STR 1 1)
  19.                   STR  (substr STR 2)
  20.             )
  21.             (if        (or ;;(= (ascii STRI) 46)
  22.                     (<= 48 (ascii STRI) 57)
  23.                 )
  24.                 (setq LX0 0) ;0 为数字;1 为非数字
  25.                 (setq LX0 1)
  26.             )
  27.         )
  28.     )

  29.     ;;
  30.     (setq LST '())
  31.     (setq STR_TMP STRI)

  32.     ;;循环执行全部
  33.     (while (/= STR "")
  34.         (if (> (ascii (substr STR 1 1)) 159)
  35.             (progn (setq STRI (substr STR 1 2)
  36.                          STR  (substr STR 3)
  37.                    )
  38.                    (setq LX1 1) ;0 为数字;1 为非数字
  39.             )
  40.             (progn
  41.                 (setq STRI (substr STR 1 1)
  42.                       STR  (substr STR 2)
  43.                 )
  44.                 (cond ((<= 48 (ascii STRI) 57)
  45.                        (setq LX1 0) ;0 为数字;1 为非数字
  46.                       )
  47.                       ((and (= LX0 0)
  48.                             (= (ascii STRI) 46)
  49.                        )
  50.                        (setq LX1 0) ;0 为数字;1 为非数字
  51.                       )
  52.                       (t
  53.                        (setq LX1 1) ;0 为数字;1 为非数字
  54.                       )
  55.                 )
  56.             )
  57.         )
  58.         (if (= LX1 LX0)
  59.             (setq STR_TMP (strcat STR_TMP STRI))
  60.             (setq LST          (cons STR_TMP LST)
  61.                   STR_TMP STRI
  62.                   LX0          LX1
  63.             )
  64.         )
  65.     ) ;_结束while
  66.     ;;
  67.     (if        (= STR_TMP "")
  68.         ()
  69.         (setq LST (cons STR_TMP LST))
  70.     )
  71.     ;;
  72.     (reverse LST)
  73. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-4-14 18:38:26 | 显示全部楼层
楼上这个代码怎么用啊,是LISP吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-4-15 08:19:39 | 显示全部楼层
编辑--查找,用200 6替换200x6。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-12-21 10:31 , Processed in 0.387913 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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