Shawn McKenzie wrote: > Alice Wei wrote: >> Hi, >> >> I have a code as in the following: >> >> <?php >> >> $file = "test.txt"; >> $fp = fopen($file, "r"); >> >> while(!feof($fp)) { >> $data = fgets($fp, 1024); >> >> if ((preg_match("/0/",$data)) || >> (preg_match("/\"\s\"/",$data)) || >> (preg_match("/\"\s\"/",$data))) { >> //Don't do a thing >> } >> >> } >> fclose($fp); >> >> ?> >> >> >> This is the input file: >> >> 1 >> 23kd >> 3dkd2 >> " " >> 4 >> 5 >> 6 >> >> For the output, I get nothing running it from the command prompt, but I would like to have " " in the output, >> could anyone please give me some guides on what I have done wrong in my regular expression? >> >> Thanks for your help. >> >> Alice >> >> >> >> >> >> >> _________________________________________________________________ >> Search from any Web page with powerful protection. Get the FREE Windows Live Toolbar Today! >> http://get.live.com/toolbar/overview > > Ummm... #1 you haven't "output" anything in your code. Your code says, > if " " is found in $data, then "Don't do a thing". > > > So if your wanting to see if there is a match in the line and return the match (which in this example seems pointless because you know that you are matching ""), then something like this: if (preg_match("/0/",$data, $matches) || preg_match("/\"\s\"/",$data, $matches)) { print_r($matches); } BTW, the second and third conditions in your if appeared to be the same, also \s matches whitespace, spaces, tabs, returns, etc... -- Thanks! -Shawn http://www.spidean.com -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php