Text arama yapan lisp
Paftada belirli bir dizinin aranması
- 13.06.2006 20:52
Bu yazılımı çalıştırmak için ara yaz aranacak dizini gir ENTER yap.

Buraya tıklayarak açılan pencereden AutoLISP kodlarını Ctrl + C ile kopyalayabilirsiniz

Kod:

(defun chgterr (s)
    (if (/= s "function cancelled")
        (princ (strcat "nerror: " s))
    )
    (setq p nil)
    (setq *error* olderr)
    (princ)
)
(defun c:ara ()
    (setq olderr *error*
          *error* chgterr
          buyut 100
          cnt 0)
    (setq echostat (getvar "cmdecho"))
    (setvar "cmdecho" 0)
    (setq aranacak (getstring t "nAranacak dizi: "))
    (setq a_uz (strlen aranacak))
    (princ "Cizimdeki tum yazilarda arama yapmak icin <Enter>'e basinizn")
    (setq sset (ssget))
    (if (not sset) (setq sset (ssget "X" (list (cons 0 "TEXT")))))
    (setq ssl (sslength sset)
          devam t     
    )
    (while (and (> ssl 0) devam)
        (setq temp (ssname sset (setq ssl (1- ssl))))
        (if (= (cdr (assoc 0 (entget temp))) "TEXT")
            (progn
                (setq yazi (cdr (assoc 1 (entget temp))))
                (setq bulundu nil
                      pos 0
                      uz (strlen yazi))
                (while (and (>= uz (+ pos a_uz)) (not bulundu)) 
                    (setq s (substr yazi (+ pos 1) a_uz))
                    (if (= s aranacak)
                        (setq bulundu t)
                    )
                    (setq pos (1+ pos))
                )      ; text içinde arama için
                (if bulundu
                    (progn
                        (setq p1 (assoc 10 (entget temp)))
                        (command "zoom" "c" (cdr p1) buyut)
                        (initget "Evet Hayir")
                        (setq msg_str (strcat "nSonraki [" aranacak "] <Evet Hayir>? "))
                        (setq cevap (getkword msg_str))
                        (if (= cevap "Hayir") (setq devam nil))
                    )
                )
            )                        ; progn için
        )                            ; eleman text 'mi ?

    )                                ; tüm elemanlar bitene kadar
    (setq *error* olderr)
    (setvar "cmdecho" echostat)
    (princ)
)
(PRINC " --> 'www.autocadokulu.com' Çizim yardımları yüklendi !")


Bu kodları nasıl kullanacağınızı bilmiyorsanız aşağıdaki linkten;
AutoLISP > Konu Anlatımları > Lisp Dosyalarının oluşturulması ve Yüklenmesi
konusunu inceleyiniz.

Yazar:
İçerik:
Tag: Text arama yapan lisp

Yorumlar :
meyildiz   30.11.2013 18:18 #15221  

lmjjkklklklklklk

yilmazakifemre   15.06.2012 11:46 #14679  

emeğine sağlık

earthworm   27.09.2011 08:37 #14297  

KAÇ ADET OLDUGUNU YAZSA SUPER OLURMUŞ

tayfun_dt   04.02.2011 14:35 #13764  

kısa yolu nedır bunu yaw

worley   02.02.2010 08:26 #12395  

FIND KOMUTUNDAN FARKI NEDIR ACABA?

brl_ozdemir   20.10.2009 07:23 #11891  

peki komut nasıl kullanılıyo işlem sırasını açıklarmısınız?

agus.mehmet   05.12.2006 15:04 #1201  

güzel bi komut find komutunun ara ya dönüşümü giib sanırım

Copyright © 2004-2022 SQL: 0.066 saniye - Sorgu: 37 - Ortalama: 0.0018 saniye