AutoCAD顧問
還沒有註冊嗎...即日起免費註冊,所有最完整的AutoCAD討論、教學及資源都在論壇裡喔~

[以解決]搜尋及取代文字可否能使用lisp或其他方式連續更換文字?

上一篇主題 下一篇主題 向下

[以解決]搜尋及取代文字可否能使用lisp或其他方式連續更換文字?

發表 由 kshuangt 于 2011-06-12, 11:15

主要是將大陸來的圖檔簡體字更換成繁體字
在CAD中有FIND的指令可以搜尋文字及取代文字內容
但在很多個檔案下需要更換約20個字,更換的字幾乎固定
在FIND搜尋下僅能以1個字或者1句話取代
所以每個檔案都重覆相同的動作
請問大家是否有更好的方式來替換文字
CAD版本為2011

若是使用wnewcp2000.exe這程式,應該僅能在舊版本R14以下的檔案使用
當然他們也不會停留在舊版本使用,我也下載嘗試過是無法更換

印象中在2007的時候是有可加載簡轉繁或繁轉簡的附加程式CTC-STC-Convertor.arx
但僅提供在那版本才能使用,不支援其他版本使用


kshuangt 在 2011-06-20, 02:48 作了第 1 次修改
avatar
kshuangt
初級會員
初級會員

文章總數 : 46
年齡 : 42
來自 : 桃園
職業 : 製造業
愛好 : 小遊戲
個性 : 內向,沉默寡言
使用年資 : 18年↑
使用版本 : 2012
積分 : 4
最佳解答 : 1
經驗值 : 2589
威望值 : 58
注冊日期 : 2011-04-27
經典問與答讀者 藍鵲204號
男 巨蟹座 兔

回頂端 向下

回復: [以解決]搜尋及取代文字可否能使用lisp或其他方式連續更換文字?

發表 由 tarpon 于 2011-06-12, 12:48

r14內有一文字屬性編輯程式
CHTEXT.lsp
在2000~2008都可使用
更改文字及字型等功能
但不能做簡繁轉換
avatar
tarpon
中級會員
中級會員

文章總數 : 201
年齡 : 27
來自 : 台北
職業 : 設計
愛好 : 打球
個性 : 溫和
使用年資 : 5年
使用版本 : 2006
積分 : 6
經驗值 : 3593
威望值 : 238
注冊日期 : 2010-07-01
串連貼紙成功 男 巨蟹座 馬

回頂端 向下

回復: [以解決]搜尋及取代文字可否能使用lisp或其他方式連續更換文字?

發表 由 kshuangt 于 2011-06-12, 14:03

感謝回覆
CHTEXT我一開始也試過
但沒我需要的繁簡轉換
avatar
kshuangt
初級會員
初級會員

文章總數 : 46
年齡 : 42
來自 : 桃園
職業 : 製造業
愛好 : 小遊戲
個性 : 內向,沉默寡言
使用年資 : 18年↑
使用版本 : 2012
積分 : 4
最佳解答 : 1
經驗值 : 2589
威望值 : 58
注冊日期 : 2011-04-27
經典問與答讀者 藍鵲204號
男 巨蟹座 兔

回頂端 向下

回復: [以解決]搜尋及取代文字可否能使用lisp或其他方式連續更換文字?

發表 由 tan866 于 2011-06-19, 08:39

貼一個程式給你參考

代碼:
(defun c:rr(/ oldtxt newtxt oldnum newnum eold ename en ss i)
    (setq ss (ssget))
    (setq i 0)
    (setq oldtxt (getstring "\nEnter old text: "))
    (setq newtxt (getstring "\nEnter new text: "))
    (setq oldnum (strlen oldtxt))
    (setq newnum (strlen newtxt))
    (repeat (sslength ss)
        (setq ename (ssname ss i))
        (setq eold (entget ename))
        (setq en (cdr (assoc 0 eold)))
        (if (= en "TEXT")
            (progn
                  (setq p 1)
                  (setq ent (assoc 1 eold))
                  (setq entxt (cdr ent))
                  (setq ennum (strlen entxt))
                  (setq aa "")
                  (while (<= p ennum)
                        (setq kk (substr entxt p oldnum))
                        (if (= kk oldtxt)
                            (progn
                              (setq kk newtxt)
                              (setq p (- (+ p oldnum) 1))
                            )
                              (setq kk (substr entxt p 1))
                        )
                        (setq aa (strcat aa kk))
                        (setq p (+ 1 p))
                  )
                (setq aa (cons 1 aa))
                (setq eold (subst aa ent eold))
                (entmod eold)
            )
        )
            (setq i (+ 1 i))
    )
)
(prompt "----------------------<< C:RR >>-----------------------")
(prin1)
avatar
tan866
初級會員
初級會員

文章總數 : 67
年齡 : 40
來自 : 高雄
職業 : 繪圖
愛好 : 騎腳踏車
個性 : 開朗
使用年資 : 5
使用版本 : 2008
積分 : 1
經驗值 : 2897
威望值 : 39
注冊日期 : 2010-10-24
藍鵲346號
男 摩羯座 龍

回頂端 向下

回復: [以解決]搜尋及取代文字可否能使用lisp或其他方式連續更換文字?

發表 由 kshuangt 于 2011-06-20, 02:32

感謝您回覆
在使用於單行文字上是可行的
在程式中的"TEXT"改成"MTEXT"
可改在多行文字中尋找取代
但在"MTEXT"執行上到是只能選舉要取代的文字
若全選是都不會做任何更換
這部份到是可以來修改看看
謝謝您
avatar
kshuangt
初級會員
初級會員

文章總數 : 46
年齡 : 42
來自 : 桃園
職業 : 製造業
愛好 : 小遊戲
個性 : 內向,沉默寡言
使用年資 : 18年↑
使用版本 : 2012
積分 : 4
最佳解答 : 1
經驗值 : 2589
威望值 : 58
注冊日期 : 2011-04-27
經典問與答讀者 藍鵲204號
男 巨蟹座 兔

回頂端 向下

上一篇主題 下一篇主題 回頂端


 
這個論壇的權限:
無法 在這個版面回復文章