LISP实现相同文字的查找和标示?
LISP如何实现相同文字的查找和标示?如图示意,输入要查找的文字“打头”,再输入其后“n”个字符,查找“打头”+其后“n”个字符相同的所有文字,并以红色表示。 不错的程序,感谢楼主分享。 这个功能很好,正需要啊。 不错的程序,谢谢分享。 <p>这个比较容易</p> 怎么做呢 写了个找文字变色的程序,可使用文字匹配符。具体参见WCMATCH函数的帮助。楼主的要求可用匹配串ZL-????
;相同串变红色 明经 ZZXXQQ 2009.8.22
(defun c:tt ()
(setvar "CMDECHO" 0)
(if (setq sst (getstring "\n要查找字串 :"))
(if (setq ss (ssget "X" (list '(0 . "TEXT") (cons 1 sst))))
(command "chprop" ss "" "c" 1 "")
)
)
(setvar "CMDECHO" 1)
(princ)
)
如果要替换文字内容呢? Z版能否一同显示数量呢?
;函数,显示相同串数量。明经 ZZXXQQ 2011.7.28
(defun numstr (str)
(if (setq ss (ssget "X" (list '(0 . "TEXT") (cons 1 str))))
(sslength ss)
0
)
)
请教Z版上下怎样接起来?
;相同串变红色 明经 ZZXXQQ 2009.8.22
(defun c:tt ()
(setvar "CMDECHO" 0)
(if (setq sst (getstring "\n要查找字串 :"))
(if (setq ss (ssget "X" (list '(0 . "TEXT") (cons 1 sst))))
(command "chprop" ss "" "c" 1 "")
)
)
(setvar "CMDECHO" 1)
(princ)
)
;函数,显示相同串数量。明经 ZZXXQQ 2011.7.28
(defun numstr (str)
(if (setq ss (ssget "X" (list '(0 . "TEXT") (cons 1 str))))
(sslength ss)
0
)
)
请教Z版,上下合并,还是不行,是什么原因?
;相同串变红色 明经 ZZXXQQ 2009.8.22
;函数,显示相同串数量。明经 ZZXXQQ 2011.7.28
(defun c:tt ()
(setvar "CMDECHO" 0)
(if (setq sst (getstring "\n要<strong><font color=\\"#FF0000\\">查找</font></strong>字串 :"))
(defun numstr (str)
(if (setq ss (ssget "X" (list '(0 . "TEXT") (cons 1 str))))
(sslength ss)
0
)
)
(command "chprop" ss "" "c" 3 "")
)
)
(setvar "CMDECHO" 1)
(princ)
)
;相同串变红色 明经 ZZXXQQ 2009.8.22 2011.7.29改
(defun c:tt ()
(setvar "CMDECHO" 0)
(if (setq sst (getstring "\n要查找字串 :"))
(if (setq ss (ssget "X" (list '(0 . "TEXT") (cons 1 sst)))) (progn
(command "chprop" ss "" "c" 1 "")
(print (sslength ss))
)
)
(setvar "CMDECHO" 1)
(princ)
)