找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1845|回复: 17

[编程申请]:将字符串中的第一个空格及这个空格以前的字符全部去掉

[复制链接]
发表于 2007-8-27 13:00:04 | 显示全部楼层 |阅读模式

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

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

×
求lsp程序,将字符串中的第一个空格及这个空格以前的字符全部去掉。谢谢。
*-*4
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 9810个

财富等级: 富甲天下

发表于 2007-8-27 19:07:51 | 显示全部楼层

  1. (DEFUN C:TEST ( / SS I ENT TXT J)
  2. (IF (SETQ SS (SSGET '((0 . "TEXT")))) (PROGN
  3.   (SETQ I -1)
  4.   (REPEAT (SSLENGTH SS)
  5.    (SETQ ENT (ENTGET (SSNAME SS (SETQ I (1+ I))))
  6.          TXT (CDR (ASSOC 1 ENT))
  7.          J 1)
  8.    (WHILE (AND (< J (LENGTH TXT)) (/= (SUBSTR TXT J 1) " "))
  9.     (SETQ J (1+ J))
  10.    )
  11.    (IF (< J (LENGTH TXT)) (PROGN
  12.     (SETQ TXT (SUBSTR TXT J)
  13.           ENT (SUBST (CONS 1 TXT) (ASSOC 1 ENT) ENT))
  14.     (ENTMOD ENT)
  15.    ))
  16.   )
  17. ))
  18. (PRINC)
  19. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2007-8-27 22:24:45 | 显示全部楼层
CAD2004测试,将LENGTH替换成STRLEN后可运行,可将字符串中的第一个空格以前的字符全部去掉,但没有删掉第一个空格,
如“123口456”会变成“口456”(口为空格),我希望是“456”,请坐改改,谢谢。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-8-27 22:50:00 | 显示全部楼层
最初由 lengliqun 发布
[B]CAD2004测试,将LENGTH替换成STRLEN后可运行,可将字符串中的第一个空格以前的字符全部去掉,但没有删掉第一个空格,
如“123口456”会变成“口456”(口为空格),我希望是“456”,请坐改改,谢谢。 [/B]

  1. (DEFUN C:TEST ( / SS I ENT TXT J)
  2. (IF (SETQ SS (SSGET '((0 . "TEXT")))) (PROGN
  3.   (SETQ I -1)
  4.   (REPEAT (SSLENGTH SS)
  5.    (SETQ ENT (ENTGET (SSNAME SS (SETQ I (1+ I))))
  6.          TXT (CDR (ASSOC 1 ENT))
  7.          J 1)
  8.    (WHILE (AND (< J (strlen TXT)) (/= (SUBSTR TXT J 1) " "))
  9.     (SETQ J (1+ J))
  10.    )
  11.    (IF (< J (strlen  TXT)) (PROGN
  12.     (SETQ TXT (SUBSTR TXT (1+ J))
  13.           ENT (SUBST (CONS 1 TXT) (ASSOC 1 ENT) ENT))
  14.     (ENTMOD ENT)
  15.    ))
  16.   )
  17. ))
  18. (PRINC)
  19. )

评分

参与人数 1D豆 +1 收起 理由
zxq0220 + 1 热心帮忙奖!(07年随手写的东东!)

查看全部评分

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

使用道具 举报

 楼主| 发表于 2007-8-28 12:29:06 | 显示全部楼层
多谢zxq0220和gysjy 两位大侠,cad2004测试可用。谢谢。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-8-29 00:36:41 | 显示全部楼层
  1. (defun c:xx (/ ss n e ent str str2)
  2.   (if (setq        ss (ssget '((0 . "*TEXT") (1 . "* *"))))
  3.   (repeat (setq n(sslength ss))
  4.     (setq n (1- n)
  5.            e (ssname ss n)
  6.           ent  (entget e)
  7.           str  (cdr (assoc 1 ent))  
  8.            str2 (substr str (+ 2 (vl-string-position (ascii " ") str)))
  9.     )
  10.     (entmod (subst (cons 1 str2) (assoc 1 ent) ent))
  11.   ))
  12. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-29 08:50:51 | 显示全部楼层
上楼 雨箭风刀 长老的程序cad2004测试可用,谢谢。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

已领礼包: 202个

财富等级: 日进斗金

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

使用道具 举报

已领礼包: 202个

财富等级: 日进斗金

发表于 2018-6-6 17:41:40 | 显示全部楼层
(defun c:tt( /  ss a b)
        (if (setq ss (ssget '((0 . "text"))))
                (progn
                        (xdrx_begin)
                             (xdrx_sysvar_push '("osmode" 0 "cmdecho" 0))
                        (mapcar
                                '(lambda(x)
                                        (setq a (XD::Obj:DXF x 1))
                                        (setq b (xd::string:regexpr "(\\S+)(\\s+)(\\S+)" a "$3" ""))
                                        (entmod (subst (cons 1 b) (cons 1 a) (entget x)))
                                )
                                (xdrx_pickset->ents ss)
                        )
                        (xdrx_sysvar_pop)
                        (xdrx_end)
                        )
        (princ)
)


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

使用道具 举报

已领礼包: 202个

财富等级: 日进斗金

发表于 2018-6-6 17:43:10 | 显示全部楼层
本帖最后由 dyjwyqz5221 于 2018-6-6 17:57 编辑

[Actionscript3] 纯文本查看 复制代码
(defun c:tt( /  ss a b)
        (if (setq ss (ssget '((0 . "text"))))
                (progn
                        (xdrx_begin)
                             (xdrx_sysvar_push '("osmode" 0 "cmdecho" 0))
                        (mapcar
                                '(lambda(x)
                                        (setq a (XD::Obj:DXF x 1))
                                        (setq b (xd::string:regexpr "(\\S+)(\\s+)(\\S+)" a "$3" ""))
                                        (entmod (subst (cons 1 b) (cons 1 a) (entget x)))
                                )
                                (xdrx_pickset->ents ss)
                        )
                        (xdrx_sysvar_pop)
                        (xdrx_end)
                )
        )
        (princ)
)

点评

既然用了API,帮你修改下  详情 回复 发表于 2018-9-5 20:50

评分

参与人数 1D豆 +5 收起 理由
newer + 5 热心帮忙奖!

查看全部评分

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

使用道具 举报

已领礼包: 202个

财富等级: 日进斗金

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

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2018-6-6 17:48:33 | 显示全部楼层
dyjwyqz5221 发表于 2018-6-6 17:45
前面那个少了个“)”

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

使用道具 举报

已领礼包: 202个

财富等级: 日进斗金

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-27 00:45 , Processed in 0.452405 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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