• simdi bu regexp'lerle ilgili onemli birsey var. burada deginilmemis, belki herkes biliyordur ancak kimisi yeni basliyordur ve regexp'i calismaz bu yuzden, yazalim ki faydamiz olsun. (gerci kimi entry'lerdeki regexp'lerde kullanilmis ancak aciklama yok)

    regexp'de greedy/non greedy denen bir olay vardir. normal sartlarda regexp'ler olabildigince cok match etmeye calisirlar, yani default olarak greedy calisirlar. bu da bazi zamanlarda problem yaratabilir.(match etmek istedigimiz sey tekrarliyorsa kendini vs). basit bir ornege bakacak olursak,

    elimizde soyle bir satir mevcut

    deneme123456test654321test

    ve biz bu satirda deneme ve test arasindaki degerleri dondurmek istiyoruz. su asagidaki dogru gorunebilir,

    /deneme(.*)test/

    ancak bu istedigimizi dondurmez. $1 icerigi 123456test654321 seklindedir. biz 123456 istiyoruz. (sebep *'in olabildigince cok match etmeye calismasidir.) bu durumda yapilabilecek olan sey *'dan sonra bir ? ile bu regexp'i non greedy yapmaktir.

    /deneme(.*?)test/

    bu durumda $1 icerigi 123456 olacaktir.

    not: ayni satir icin /deneme(\d+)test/ ifadesi de uygundur 123456 dondurmek icin ancak bugunku dersimizin konusu greedy/non greedy farki oldugundan * ile calisilmistir.
  • pattern matching'in unix tarafinda olu$mu$ hayvani standardi..

    orn: "[0-9]{2} [a-z]{2} [0-9]{3}" regexp'i size bir string icinden 2 harfli 3 rakamli bir plaka no'sunu cikaracaktir..
  • bunu bilmeyen yılların programcıları vardır ki, anlatırken ne olduğunu aşağılarlar, ne gerek var, ben bunu kodla parse ettiririm falan derler. böyle diyenlere ekstra ilgi gösteriniz, doğru yolu keşfettiklerinde teşekkür edeceklerdir.
  • ya hayat kurtaran ya da ömür törpüleyen*. ortası yok, ta ki iyice öğrenene kadar.

    bir de bir sayının asal olup olmadığını bulmamıza yarayan engine'dir.
    (bkz: #5149025)
    c sharp için :

    bool isprimenumber(int number)
    {
    return !regex.ismatch(new string('1', number), @"^1?$|^(11+?)\1+$");
    }
  • 1951 yılında stephen cole kleene adlı matematikçi tarafından geliştirilmiştir. ufak farklılıkları saymazsak tek bir programlama diline bağlı değildir. esnek aramayla patern bulmanızı sağlar. verilerle ilgili konularda yeri önemlidir (validation, scraping, wrangling...). kurcalamak için regex101, regexr, regex pal gibi online test araçları ya da text editorlar kullanılabilir. dilbilim ve mantık konuları ilginizi çekiyorsa 'regular expression' zevkli bir konu olur.

    programlamayla alakalı olmayanlar için tanım: yeni şifre alırken bir şeyleri eksik yazarsanız "maloviç sana en az beş sayı dedik" diyen ya da email adresini yanlış yazarsanız "bu email adresi mi şimdi!? kimi yiyorsun sen abdurrahman?" diye söylenen ya da doğru yazdığınızda "aferin. devam edebilirsin, insan" diyen muhtemelen regex.
  • gereksiz bir sekilde programcilarin omurlerinden caliyor, yapilan islemler ise uc asagi bes yukari benzer.

    gpt-3 bu hamalliga bir dur diyecek gibi. "regexte su nasildi" diye ugrasip debelenip bununla zaman gecirmek zorunda kalmayacak kimse bir sure sonra.

    ilk cozumlerden biri
  • ben gibi üşenenler için bunun ilacı vereceğim adrestedir. sitede hazır olarak 200'den çok ifade var, üzerinde deneyin, kurcalayın...
    http://regexlib.com/displaypatterns.aspx
  • gecenin ( ya da sabahın) bu saatinde ayakta olma nedenim.."ay bu size çok yakıştı yanına bi de deterministic finite automaton almazmıydınız??"..
    (bkz: uykusuzluk ve ötesi)
  • regexp diye de gecer. mesela perl default destekler, dil icerisinde regular expression operatorleri vardir fonksiyona gerek kalmaz. hastasiyim dedirten ba$liktir ayrica. evet.
hesabın var mı? giriş yap