求大神看下复制针贴 求一个文字功能
比如有文字ABC DExFG,在ABC和DExFG中间有个空格,求输入TT,点取文字ABC DExFG后,把空格前面的ABC复制到粘贴板,以后如果ctrl+v可以直接复制到其他地方输入TT2,点取文字ABC DExFG,把空格后面的DExFG复制到粘贴板,同时在粘贴板中的 x符号变成 *符号,就是复制出来是DE*FG,原来cad上面的文字不变
(defun c:tt ()
(if (and (setq s1 (entsel "\n选择文字"))
(setq ent (entget (car s1)))
(= (cdr(assoc 0 ent)) "TEXT")) (progn
(setq txt (cdr(assoc 1 ent)))
(set-clip-string (substr txt 1 (vl-string-position (ascii " ") txt)))
))
(princ)
)
(defun SET-CLIP-STRING (STR / HTML RESULT)
(and (= (type STR) 'STR)
(setq HTML (vlax-create-object "htmlfile"))
(setq RESULT
(vlax-invoke
(vlax-get (vlax-get HTML 'PARENTWINDOW) 'CLIPBOARDDATA)
'SETDATA
"Text"
STR
)
)
(vlax-release-object HTML)
)
)
去了解一下正则表达式,拆分文字最容易。 自贡黄明儒 发表于 2019-7-18 11:18
去了解一下正则表达式,拆分文字最容易。
黄大师帮忙搞下:lol:lol:lol:lol 自贡黄明儒 发表于 2019-7-18 11:18
去了解一下正则表达式,拆分文字最容易。
黄大神看看呀啊啊啊啊啊 ZZXXQQ 发表于 2019-7-18 16:26
Z大后半部分怎么弄呀,能否完善一下 本帖最后由 1291500406 于 2019-7-19 09:30 编辑
664571221 发表于 2019-7-18 17:27
Z大后半部分怎么弄呀,能否完善一下
;;你要的后半部分 by必强
(defun c:bb( / b_clip )(vl-load-com)(vla-getentity (vla-get-utility(vla-get-activedocument(vlax-get-acad-object))) 'obj ' ip "\n必强提示请选择文字")
(setq b_clip(Vlax-Get-Property(Vlax-Get (vlax-create-object "htmlfile")'ParentWindow) 'ClipboardData))(Vlax-Invoke b_clip 'SetData "text"
(vl-string-translate "x" "*" (vl-list->string(cdr(member 32(vl-string->list (Vlax-Get obj 'TextString)))))))(vlax-release-object b_clip)(princ))
1291500406 发表于 2019-7-18 22:03
;;你要的后半部分 by必强
(defun c:bb( / b_clip )(vl-load-com)(vla-getentity (vla-get-utility(vla-g ...
感谢我强哥点赞点赞.
页:
[1]