Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
minhngockt

LISP XÓA CHUỔI KÝ TỰ TEXT

Các bài được khuyến nghị

Nếu tất cả chuỗi đều có 4 ký tự trước ký tự "-" và 7 ký tự sau ký tự "-" thì dùng Find 2 lần, khỏi cần lisp.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

 

Nhờ các cao thủ viết hộ em lisp xóa các chuổi ký tự text trong một chuỗi ký tự. Đây là bản vẽ của em, em xin chân thành cảm ơn các bác.http://www.cadviet.com/upfiles/3/61260_2.dwg

Hề hề hề,

Nếu còn thích lisp thì bạn thử xài cái này coi sao nhé:

http://www.cadviet.com/upfiles/3/5194_modtext.lsp

 

 

(defun Separate (S sym / i L ch)
(setq i 0 L nil)
(while (< i (strlen S))
      (setq i (1+ i) ch (substr S i 1))
      (if (= ch sym) (progn
(setq
     L (append L (list (substr S 1 (- i 1))))
     S (substr S (1+ i) (- (strlen S) i))
     i 0
)
      ))
)
(append L (list S))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:tch ( / sst ltxt tx txl txn )
(vl-load-com)
(setq sst (acet-ss-to-list (ssget (list (cons 0 "text")))))
(foreach txt sst
      (setq ltxt (entget txt)
                tx (cdr (assoc 1 ltxt))
                txl (separate tx "-")               
      )
      (if (> (length txl) 1)
              (progn
                        (setq txn (nth 1 txl))
                        (setq ltxt (subst (cons 1 txn) (assoc 1 ltxt) ltxt))
                        (entmod ltxt)
              )
     )
     
)
(princ)
)

 

(defun Separate (S sym / i L ch)
(setq i 0 L nil)
(while (< i (strlen S))
      (setq i (1+ i) ch (substr S i 1))
      (if (= ch sym) (progn
(setq
     L (append L (list (substr S 1 (- i 1))))
     S (substr S (1+ i) (- (strlen S) i))
     i 0
)
      ))
)
(append L (list S))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:tch ( / sst ltxt tx txl txn )
(vl-load-com)
(setq sst (acet-ss-to-list (ssget (list (cons 0 "text")))))
(foreach txt sst
      (setq ltxt (entget txt)
                tx (cdr (assoc 1 ltxt))
                txl (separate tx "-")               
      )
      (if (> (length txl) 1)
              (progn
                        (setq txn (nth 1 txl))
                        (setq ltxt (subst (cons 1 txn) (assoc 1 ltxt) ltxt))
                        (entmod ltxt)
              )
     )
     
)
(princ)
)
(defun Separate (S sym / i L ch)
(setq i 0 L nil)
(while (< i (strlen S))
      (setq i (1+ i) ch (substr S i 1))
      (if (= ch sym) (progn
(setq
     L (append L (list (substr S 1 (- i 1))))
     S (substr S (1+ i) (- (strlen S) i))
     i 0
)
      ))
)
(append L (list S))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:tch ( / sst ltxt tx txl txn )
(vl-load-com)
(setq sst (acet-ss-to-list (ssget (list (cons 0 "text")))))
(foreach txt sst
      (setq ltxt (entget txt)
                tx (cdr (assoc 1 ltxt))
                txl (separate tx "-")               
      )
      (if (> (length txl) 1)
              (progn
                        (setq txn (nth 1 txl))
                        (setq ltxt (subst (cons 1 txn) (assoc 1 ltxt) ltxt))
                        (entmod ltxt)
              )
     )
     
)
(princ)
)
(defun Separate (S sym / i L ch)
(setq i 0 L nil)
(while (< i (strlen S))
      (setq i (1+ i) ch (substr S i 1))
      (if (= ch sym) (progn
(setq
     L (append L (list (substr S 1 (- i 1))))
     S (substr S (1+ i) (- (strlen S) i))
     i 0
)
      ))
)
(append L (list S))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:tch ( / sst ltxt tx txl txn )
(vl-load-com)
(setq sst (acet-ss-to-list (ssget (list (cons 0 "text")))))
(foreach txt sst
      (setq ltxt (entget txt)
                tx (cdr (assoc 1 ltxt))
                txl (separate tx "-")               
      )
      (if (> (length txl) 1)
              (progn
                        (setq txn (nth 1 txl))
                        (setq ltxt (subst (cons 1 txn) (assoc 1 ltxt) ltxt))
                        (entmod ltxt)
              )
     )
     
)
(princ)
)
(defun Separate (S sym / i L ch)
(setq i 0 L nil)
(while (< i (strlen S))
      (setq i (1+ i) ch (substr S i 1))
      (if (= ch sym) (progn
(setq
     L (append L (list (substr S 1 (- i 1))))
     S (substr S (1+ i) (- (strlen S) i))
     i 0
)
      ))
)
(append L (list S))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:tch ( / sst ltxt tx txl txn )
(vl-load-com)
(setq sst (acet-ss-to-list (ssget (list (cons 0 "text")))))
(foreach txt sst
      (setq ltxt (entget txt)
                tx (cdr (assoc 1 ltxt))
                txl (separate tx "-")               
      )
      (if (> (length txl) 1)
              (progn
                        (setq txn (nth 1 txl))
                        (setq ltxt (subst (cons 1 txn) (assoc 1 ltxt) ltxt))
                        (entmod ltxt)
              )
     )
     
)
(princ)
)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×