----- Original Message -----
From: Conan The Barbarian <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, June 26, 2000 6:25 PM
Subject: Re: [programming] Regex pake C
> He he he.... Bung Yusron kurang teliti, ya,
> dalam membaca source code regex yang dulu pernah saya
> posting.
> Saya tidak akan memposting ulang source nya,
> tetapi kalau ingin lagi, lewat japri saja.
> Dalam source code saya, saya menggunakan
> kurung untuk mengambil "submatch" seperti
> problem yang dihadapi Mas Yusron sekarang.
> Yaitu :
>
> strcpy(regs,"a href\\s*=\\s*\"([^\"]*)\"");
> ^^^^^^^^
> ||||||||
>
> Jelas, khan ?
> Nah, gimana cara matching nya ?
> Pertama, anda harus sediakan tempat regmatch yang cukup.
>
> "PENYEDIAAN" regmatch :
> 1. Kalau tidak pakai submatch :
>
> regmatch = (regmatch_t *) malloc (sizeof(regmatch_t));
>
> 2. Kalau pakai satu submatch :
>
> regmatch = (regmatch_t *) malloc (sizeof(regmatch_t)*2);
>
> 3. Kalau pakai dua submatch (seperti problem
> bung Yusron) :
>
> regmatch = (regmatch_t *) malloc (sizeof(regmatch_t)*3);
>
> Nah matching nya ada di mana ?
> 1. Untuk keseluruhan match :
>
> ada di mulai dari posisi regmatch[0].rm_so
> sampai posisi regmatch[0].rm_eo
>
> 2. untuk submatch pertama ada di :
>
> regmatch[1].rm_so s/d regmatch[1].rm_eo
>
> 3. untuk submatch kedua ada di :
>
> regmatch[2].rm_so s/d regmatch[2].rm_eo
>
> Jadi kalau mau ambil submatch yang kedua,
> caranya adalah :
>
> strncpy(http_str,p+regmatch[2].rm_so,(regmatch[2].rm_eo -
regmatch[2].rm_so));
>
> atau pakai :
>
> memcpy(http_str,p+regmatch[2].rm_so,(regmatch[2].rm_eo -
regmatch[2].rm_so));
>
> Jangan ragu untuk tanya lagi jika masih bingung.
> Nanti kita bingung bersama-sama, he he he...
> Nah, mudah-mudahan setelah anda membaca penjelasan
> saya, anda dapat lebih mudah mencerna manual regex.
>
> Hizazul Emkom.
>
> HIMBAUAN:
> Buat para Linux programmer yang pinter-pinter,
> bagaimana jika kita hilangkan budaya asal response
> "baca aja man/manualnya". Tidak semua orang dapat
> dengan mudah mencerna manual yang ditulis dalam
> bahasa Inggris. Tidak ada salahnya jika kita
> memberi sedikit penjelasan/pancingan/program kecil sebelum
> berkata "baca aja man/manualnya".
>
> -----Original Message-----
> From: "Yusron Hilmy" <[EMAIL PROTECTED]>
> Date: Mon, 26 Jun 2000 17:26:42 +0700
> To: "Linux Programming Milis" <[EMAIL PROTECTED]>
> Subject: [programming] Regex pake C
>
>
> > Saya perlu me-run regex berikut di C :
> >
> > Posted by\s*(.*?)\s+on\s+(.*?)</B>
> >
> > pake regcomp(), regexec(), regfree(). Masalahnya adalah bagaimana saya
bisa
> > mengambil dua bagian yang ada di tanda ().
> >
> > Ada yang mau membantu ???
> >
> >
>
> --------------------------------------------------------------------------
------
> > Utk berhenti langganan, kirim email ke
[EMAIL PROTECTED]
> > Informasi arsip di <A HREF="http://www.linux.or.id/milis.php3"
TARGET="_new"><FONT
COLOR="BLUE">http://www.linux.or.id/milis.php3</FONT></A>
> > Pengelola dapat dihubungi lewat [EMAIL PROTECTED]
> >
> >
> --
> _____________________________________________________________
> satusports.com, situs olahraga nomor satu dan terlengkap Indonesia.
> Untuk informasi terakhir sepakbola, bolabasket, tinju, golf, dan olahraga
lainnya,
> kliklah http://www.satusports.com
>
>
>
>
>
>
>
>
> Powered by OutBlaze
>
> --------------------------------------------------------------------------
------
> Utk berhenti langganan, kirim email ke
[EMAIL PROTECTED]
> Informasi arsip di http://www.linux.or.id/milis.php3
> Pengelola dapat dihubungi lewat [EMAIL PROTECTED]
>
>
--------------------------------------------------------------------------------
Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]