10.03.2024 08:13    

TENTEN143
Arkadaşlar merhaba
forumları, siteleri aradım fakat bulamadım. Herhangi bir kısayolda aklıma gelmiyor. Normal find and replace ile çok ciddi günler kaybettirecek bir işlem.
Şöyle bir lisp lazım. Bir text tipi var
250x200-L490
300x200-L255 yazıyor. bunun gibi farklı farklı textler.
-L harfinden sonrasını silecek lisp lazım. Sadece bir katta 1182 adet farklı -L ve sonrasında rakamlar var. o yüzden hani olur ya "şu harften sonrasını sil" gibi bir komut eklenirse çalışacak bir lisp lazım.

TENTEN143 (10.03.2024 10:09 GMT)

10.03.2024 19:20    

ProhibiT
Kod:

; Text'lerin sonunda Belirlenen bir Karakter ve sonrasının kırpılması
;                         ProhibiT (Mehmet Şahin Güvercin) 10.03.2024
(defun c:TrTr (/)
  (setq RfKr (getstring "\nReferans Karakter: "))
  (princ "\nSonu Kırpılacak Text'leri seçiniz: ")
  (setq TxLr (ssget (list (cons 1 (strcat "*" RfKr "*")))) n -1)
  (while (setq PvT (ssname TxLr (setq n (1+ n))))
    (setq PvT (entget PvT)
          PvT (subst (cons 1 (substr (cdr (assoc 1 PvT)) 1
                       (1- (vl-string-position (ascii RfKr)
                             (cdr (assoc 1 PvT)))))) (assoc 1 PvT) PvT)
          PvT (entmod PvT) PvT (entupd (cdr (assoc -1 PvT))))))

Fonksiyon Adı: TRTR

Referans Karakter belirlendikten sonra, seçim yapılırken Window, Crossing gibi seçim yöntemleri kullanılabilir, hatta çizimin tümü seçilebilir... içinde Referans Karakter bulunan Text Nesneleri seçilecek ve işleme alınacaktır.

Girilen Karakter (L gibi) de dahil yazının sonu kırpılır.
Büyük/Küçük Harf duyarlıdır.

Kolay gelsin.

> 1 <
Copyright © 2004-2022 SQL: 1.081 saniye - Sorgu: 55 - Ortalama: 0.01966 saniye