找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 758|回复: 14

(完成)[编程申请]:统计同样文字在图中出现的次数

[复制链接]
发表于 2003-5-15 18:10:37 | 显示全部楼层 |阅读模式

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

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

×
文字可能是MTEXT,也可能是SINGLTEXT
也能够支持英文!因为有很多可能写得是代号
最好是指定层上的,这样才好控制!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 145个

财富等级: 日进斗金

发表于 2003-5-15 20:16:13 | 显示全部楼层

Re: [编程申请]:统计同样文字在图中出现的次数

最初由 doongs 发布
[B]文字可能是MTEXT,也可能是SINGLTEXT
也能够支持英文!因为有很多可能写得是代号
最好是指定层上的,这样才好控制! [/B]


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

使用道具 举报

 楼主| 发表于 2003-5-16 09:24:34 | 显示全部楼层
下面是一张植栽平面图,用面和英文其实是植物的拉丁文代号,我想统计一下我用过了多少种植物,以方便做植栽表,统计次数完全是为修改来用了,因为一般的来说,在一个地方植物一般不用一次,如果只用一次了,可能就会用别的来代替一下!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

发表于 2003-5-16 18:52:39 | 显示全部楼层
(ssget '((0 . "text") (1 . "RS*"))) 统计选择区域所有 RS 开头的文字。
(ssget '((0 . "text") (1 . "RS"))) 统计选择区域 RS 文字

仅适用text文字,MTEXT查DXF手册。
例如统计 RS 文字

  1. (defun c:test (/ ss e)
  2.   (setq e (xdrx_entsel "\n点选统计文字:" '((0 . "text"))))
  3.   (if e
  4.     (progn
  5.       (xdrx_setenttodb (car e))
  6.       (princ (strcat "\n选择文字为 " (xdrx_getentdxf 1)))
  7.       (princ "\n拾取选择范围[ALL - 全选]...")
  8.       (setq ss (ssget (list '(0 . "text") (assoc 1 (entget (car e))))))
  9.       (if ss
  10.         (princ (strcat "\n文字 "
  11.                        (xdrx_getentdxf 1)
  12.                        " 数量为 "
  13.                        (itoa (sslength ss))
  14.                )
  15.         )
  16.       )
  17.     )
  18.   )
  19.   (princ)
  20. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 488个

财富等级: 日进斗金

发表于 2003-5-16 20:56:37 | 显示全部楼层
最初由 eachy 发布
[B](ssget '((0 . "text") (1 . "RS*"))) 统计选择区域所有 RS 开头的文字。
(ssget '((0 . "text") (1 . "RS"))) 统计选择区域 RS 文字

仅适用text文字,MTEXT查DXF手册。
例如统计 RS 文字
[code]
(defun c:te... [/B]


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

使用道具 举报

 楼主| 发表于 2003-5-17 14:06:46 | 显示全部楼层
to eachy:
我的意思不是一个一个地去找,比如,这一个层上,一共有多少个文字,直接罗列出来,如香樟出现了三次,黄杨出现了6次……,而不是我先知道香樟,然后再去找用了多少次香樟
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

发表于 2003-5-17 15:47:37 | 显示全部楼层
最初由 doongs 发布
[B]to eachy:
我的意思不是一个一个地去找,比如,这一个层上,一共有多少个文字,直接罗列出来,如香樟出现了三次,黄杨出现了6次……,而不是我先知道香樟,然后再去找用了多少次香樟 [/B]

改好了,统计单字的,还可以扩展到统计“黄杨5棵”“黄杨3棵”等,其实就是一个用关键字排序问题。

  1. (defun c:test (/ ss e string txtlst)
  2.   (setq e (xdrx_entsel "\n点选统计文字:" '((0 . "text"))))
  3.   (if e
  4.     (progn
  5.       (xdrx_setenttodb (car e))
  6.       (princ (strcat "\n选择文字为 " (xdrx_getentdxf 1)))
  7.       (princ "\n拾取选择范围[ALL - 全选]...")
  8.       (setq ss (ssget (list '(0 . "text") (assoc 8 (entget (car e))))))
  9.       (xdrx_setsstodb ss 0)
  10.       (while (setq e (xdrx_getentdata 0))
  11.         (setq string (xdrx_getentdxf 1))
  12.         (if txtlst
  13.           (progn
  14.             (if        (assoc string txtlst)
  15.               (setq
  16.                 txtlst (subst
  17.                          (append (list string) (assoc string txtlst))
  18.                          (assoc string txtlst)
  19.                          txtlst
  20.                        )
  21.               )
  22.               (setq txtlst (append (list (list string)) txtlst))
  23.             )
  24.           )
  25.           (setq txtlst (list (list string)))
  26.         )
  27.       )
  28.       (mapcar '(lambda (x)
  29.                  (princ        (strcat "\n\t   " (car x) "\t" (itoa (length x)))
  30.                  )
  31.                )
  32.               txtlst
  33.       )
  34.     )
  35.   )
  36.   (princ)
  37. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-5-17 19:47:44 | 显示全部楼层
试用了一下,正是我想要的东西,谢谢你!
在我用的时候我把打印换行的除掉了,东西看起来就更紧凑了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 488个

财富等级: 日进斗金

发表于 2003-5-18 21:56:18 | 显示全部楼层
最初由 eachy 发布
改好了,统计单字的,还可以扩展到统计“黄杨5棵”“黄杨3棵”等,其实就是一个用关键字排序问题。

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

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

发表于 2003-5-18 22:25:37 | 显示全部楼层
最初由 aeo 发布
[B]
才怪.
"黄杨5棵"是名字,还是"黄杨"是名字,你的cad神了 [/B]
当然还要对字串处理后才可以,我说的是扩展后。给你个思路,把字串根据需要转换成这样的表
((“RC” “RC” ... )((“黄杨” “5” “棵”)“黄杨” (“黄杨” “3”“棵”)  ....) ... )是不是可以统计呀:)

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

使用道具 举报

已领礼包: 488个

财富等级: 日进斗金

发表于 2003-5-19 00:14:51 | 显示全部楼层
刚好是有个数字分了一下.
比如"施工" "施  工" "施工说明"...
        "厨房1""厨房1卫生间2"""厨房2卫生间1"......
看来每个只能是出现一次.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

发表于 2003-5-19 18:16:12 | 显示全部楼层
最初由 aeo 发布
[B]刚好是有个数字分了一下.
比如"施工" "施  工" "施工说明"...
        "厨房1""厨房1卫生间2"""厨房2卫生间1"......
看来每个只能是出现一次. [/B]

分是肯定可以继续分的,对字串拆分,以第一个字串为索引分类形成子表,然后再对子表以第二个字串为索引再对子表分类,依次类推,总会分清的。不过最好有个估计,统计的字串的深度到几层,比如实际中可能到3层分类就够了,也许到四层如你的例子,如果用文字来限定,最大的层次就是单字串拆分后 length 的最大数。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-22 15:08:05 | 显示全部楼层
eachy版主:
看了好些您编的程序里,发现您的帖子中,编的程序没有右上角那“拷贝至剪切版”功能?好像发帖说明里有详细说明的。
(等级不够,不能耳语,见谅)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-9-15 16:41:38 | 显示全部楼层
我找了很久,今天终于让我搜到了,哈哈哈哈,还有一个“谢谢各位”。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-1-30 21:47:56 | 显示全部楼层
和建筑上的门窗统计有些象.可以列一个表
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-10 05:10 , Processed in 0.494745 second(s), 61 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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