Follow us on...
Follow us on G+ Follow us on Twitter Follow us on Facebook Watch us on YouTube
Register
Results 1 to 8 of 8
  1. #1
    Status
    Offline
    Anto.PJ's Avatar
    Forum Guru
    Join Date
    May 2011
    Location
    macz
    Posts
    1,696
    Reviews
    Read 0 Reviews
    Downloads
    7
    Uploads
    0
    Feedback Score
    0

    REGULAR EXPRESSION (basic)

    pertamanya.. ane memandang regex ini gak bakalan nyampe di otak ane.. tapi sedikit sedikit "terpancing" karena seringnya berhadapan konfigurasi squid dan.. L7 (yang kayaknya berubah2 implementasinya disetiap versi ROS)

    apa itu regex?? regular expression.. sebuah pengolahan text yang sering dipakai pada beberapa bahasa pemrograman. tanpa menggunakan regex ini, refresh pattern di squid jadi panjang banget.. pokoknya regex mengenali pola-pola data dengan proses matching.. dalam sebuah url yang panjang dan bertele-tele ternyata ada kunci untuk menyimpulkan data apa yang sedang direquest.. atau sedang di download, kunci inilah yang dirumuskan dalam regex, seperti seorang kriptografer.. :P

    ente yang pake windows atau linux base pasti tau apa itu wildcard atau globbing jika di Unix. Wildcard adalah sebuah string pola yang dapat digunakan untuk dicocokkan dengan sekumpulan nama file dan direktori. Mis: *.exe cocok dengan semua file berekstensi .exe. ???.3gp cocok dengan file .3gp. wildcard ini ternyata tidak sama polanya di windows, unix, dan linux.. nah.. regex mengambil jalan tengah..
    seperti wildcard, Regex mengenali berdasarkan pola, yang dicocokan terhadap string dari kiri ke kanan,

    tanda * dan ? disebuat karakter meta yang berarti alias.. (bukan sebenarnya red.)

    String Meta
    string meta itu terdiri dari | ( ) [ ] ? dimana
    • | adalah pemilihan (or)
      ( dan ) adalah pengelompokan
      [ dan ] untuk character set
      ? yang berarti opsional


    contoh:

    elo|gue|end match dengan elo atau gue atau end selain itu nggak
    (kakiku|tanganku)sakit match dengan kakiku sakit atau tanganku sakit
    mikr[oi]ti(k|ng) match dengan mikrotik, mikritik, mikroting, mikriting
    [A-Za-z] match dengan alphabet huruf kapital, dan huruf kecil, tapi tidak match dengan 1,2,3,4,5....!@##
    [0-9] match dengan 1,2,3,4........0
    0[0-9][1-9] match dengan 001 - 099, tidak match dengan 0, 00, 10-99, 000, 100, 101, dst

    String opsional dan string meta lainnya
    ? artinya boleh ada, boleh tidak
    . artinya match dengan 1 karakter, apapun itu
    * artinya tidak ada sama sekali (nol) atau lebih karakter
    + artinya satu atau lebih karakter
    ^ batas depan, berarti didepannya gak boleh adalagi karakter dan tutupnya adalah $ yang berarti dibelakannya udah ga ada lagi karakter, biasa disebut jangkar
    tetapi didalam [ ], $ bukan string meta..

    contoh

    (kom)?puter match dengan komputer atau puter
    kontr?ol match dengan kontrol atau .... heheheheh
    t.ket match dengan tiket, tzket, twket, t1ket, t*ket dan seterusnya
    b.?la match dengan bola, bela, bila, atau bla
    678 match dengan 12345678, 456789, pokoknya yang mengandung 678
    ^678 hanya match dengan 678, 6789, deretan 345678 tidak cocok
    34$ match dengan 1234, 234, 34 345678 tidak cocok

    string meta yang haus resource jika salah penggunaan
    .+ match dengan apapun itu.. yang penting string
    .* lebih parah lagi.. biarpun bukan string (ga ada karakter) diembat juga


    Quantifier

    ?, +, dan * sebetulnya adalah shortcut dari sebuah sintaks yang lebih umum, yaitu quantifier. Quantifier menyatakan berapa rentang jumlah yang diperbolehkan dari elemen yang di depannya. Format quantifier adalah salah satu dari:

    X{m}, artinya elemen X harus terulang sebanyak persis m kali.
    X{m,}, artinya elemen X harus ada minimal sebanyak m kali.
    X{,n}, artinya elemen X boleh ada hingga terulang maksimal n buah.
    X{m,n}, artinya elemen X boleh ada dari m hingga n buah.

    Beberapa contoh:
    \d{5} cocok dengan bilangan 00000, 10000 hingga 99999 (semua harus terdiri dari digit sebanyak lima buah).
    \d{1,5} cocok dengan bilangan 0-99999 (mulai dari satu hingga lima digit).
    \d{1,} cocok dengan deretan digit, atau sama dengan pola \d+.
    ? sama dengan {0,1}, + sama dengan {1,} dan * sama dengan {0,}.

    tambah jauh tambah ngeri ya??

    untuk membuat sebuah karakter meta menjadi karakter yang berupa string (literal) kita perlu menambahkan "backslash".. ya.. "\"
    contoh: [0-9]+(.[0-9]*) >> salah apa benar?? benar benar aja sih.. tapi jika maksudnya adalah
    "Rangkaian satu atau lebih digit yang boleh diikuti oleh titik dan nol atau lebih digit lagi" yang maksudnya ntar hanya match dengan : 5, 0.3, 1012, dan 500.500. maka salah total..
    kenapa?? karena mengandung karakter meta (.) yang berarti.. boleh 0z1, 0+0 :P

    nah.. sekarang.. silahkan periksa2 squid agan2 sekalian... silahkan periksa refresh patternnya.. pelajari apa maksudnya.. :P
    sampe sekarang ane juga masih bingung..

    disadur dari file-file lama hasil intip-intip di web-server master.web.id

  2. The Following User Says Thank You to Anto.PJ For This Useful Post:


  3. #2
    Status
    Offline
    Vj Come Benk's Avatar
    Baru Gabung
    Join Date
    Jul 2012
    Location
    padang
    Posts
    9
    Reviews
    Read 0 Reviews
    Downloads
    1
    Uploads
    0
    Feedback Score
    0
    tut yang bagus mas...

  4. #3
    Status
    Offline
    Mild1505's Avatar
    Baru Gabung
    Join Date
    Nov 2012
    Posts
    1
    Reviews
    Read 0 Reviews
    Downloads
    0
    Uploads
    0
    Feedback Score
    0
    thanx...

    print to pdf....

  5. #4
    Status
    Offline
    Jok Sayo's Avatar
    Baru Gabung
    Join Date
    Nov 2012
    Posts
    3
    Reviews
    Read 0 Reviews
    Downloads
    0
    Uploads
    0
    Feedback Score
    0
    mantab om Click here to enlarge keren

    bisa buatin untuk linux atau ROS ga om penjabaran yang seperti ini ???

  6. #5
    Status
    Offline
    kelvin87's Avatar
    Baru Gabung
    Join Date
    Jul 2012
    Posts
    16
    Reviews
    Read 0 Reviews
    Downloads
    0
    Uploads
    0
    Feedback Score
    0
    waduh kayaknya ga bakal sampai di kepala nih barang
    sampe mata trus lupa lagi.. wkwkkw

  7. #6
    Status
    Offline
    alldin's Avatar
    Baru Gabung
    Join Date
    Dec 2010
    Posts
    13
    Reviews
    Read 0 Reviews
    Downloads
    1
    Uploads
    0
    Feedback Score
    0
    Nubie coba terus belajar waopun Click here to enlarge

    btw thanks banget tuts nya om Click here to enlarge

  8. #7
    Status
    Offline
    Fikanet's Avatar
    Newbie
    Join Date
    Apr 2011
    Location
    Curup-Bengkulu-Indonesia
    Posts
    65
    Reviews
    Read 0 Reviews
    Downloads
    6
    Uploads
    1
    Feedback Score
    0
    nice infoh om anto , izin Ctrl+c .,.,.,.Click here to enlargeClick here to enlarge tq om, sekalian nyimak.

  9. #8
    Status
    Offline
    muaredi's Avatar
    Newbie
    Join Date
    May 2010
    Posts
    51
    Reviews
    Read 0 Reviews
    Downloads
    1
    Uploads
    0
    Feedback Score
    0
    Click here to enlarge toooooooobbbbbbb

 

 

Thread Information

Users Browsing this Thread

There are currently 2 users browsing this thread. (0 members and 2 guests)

Similar Threads

  1. REGULAR EXPRESSION (basic)
    By Anto.PJ in forum Tutorial
    Replies: 28
    Last Post: 22-04-2012, 22:04
  2. Basic Mikrotik?
    By phenom940 in forum Beginner Basics
    Replies: 15
    Last Post: 22-11-2009, 19:41
  3. <<<<<ASK>>>>>>>> regular expression webproxy
    By ciupax in forum Beginner Basics
    Replies: 9
    Last Post: 01-08-2008, 00:23
  4. <ask> very basic networking
    By username in forum Beginner Basics
    Replies: 8
    Last Post: 09-01-2008, 10:23
  5. Hot spot basic
    By intipratama in forum Beginner Basics
    Replies: 2
    Last Post: 08-12-2007, 18:03

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •