On 21-Jun-2001, [EMAIL PROTECTED] wrote:
> Saya mencoba fungsi regular expression. 
> Kasusnya adalah mencari string yang match selain "cinta"      . 
>                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
> Berikut cara saya, tapi gagal.. ;(
> 
> <?
> $string = "berbahagialah cinta itu anugrah Tuhan";
> preg_match_all("/^(cinta)/",$string,$hasil);

Ini akan match hanya jika $string diawali dengan "cinta", karena "^" artinya
"pada awal".

> $hasil1=implode("",$hasil[0]);
> ....
> ?>

Dan karena yg anda match cuma "cinta" maka $hasil akan selalu cuma satu
element, dan itu pun baru ada kalo match, kalo tidak match ya kosong.

> Gimana caranya agar yang ketemu itu : berbahagialah itu anugrah Tuhan ???

Ini lain dengan yg anda tanyakan di atas. Kalo ini artinya anda mau
menghilangkan "cinta" dari $string. Triknya adalah menggunakan substitution
dengan nothing: 

    $stripped = preg_replace("/cinta//g", $string);

tentu saja regexnya mungkin perlu di-adjust sesuai kebutuhan anda.


Kalo yg anda tanyakan di atas, yaitu negative dari match, bisa dengan
operator "not":

    if ( ! preg_match("/cinta/", $string) )
        ...


Ronny

-- 
To verify my PGP signature get my public key from http://ronny.haryan.to/

PGP signature

Kirim email ke