Re: preg_replace anything that isn't WORD

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



hack988 hack988 wrote:
>  Use preg_replace_callback instead!
> preg_replace_callback is better performance than preg_replace with /e.
> ---------------------------------------------------------------------------------
> code
> 
> $str="cats i  saw a cat and a dog";
> $str1=preg_replace_callback("/(dog|cat|.)/is","call_replace",$str);
> echo $str."<BR/>";
> echo $str1;
> function call_replace($match){
>  if(in_array($match[0],array('cat','dog')))
>   return $match[0];
>  else
>   return "";
> }
> 
> 2009/8/24 tedd <tedd.sperling@xxxxxxxxx>:
>>> On Sat, Aug 22, 2009 at 12:32 PM, “•ÈýÏÝ“•ÂÔ<danondaniel@xxxxxxxxx>
> wrote:
>>>>  Lets assume I have the string "cats i  saw a cat and a dog"
>>>>  i want to strip everything except "cat" and "dog" so the result will be
>>>>  "catcatdog",
>>>>  using preg_replace.
>>>>
>>>>
>>>>  I've tried something like /[^(dog|cat)]+/ but no success
>>>>
>>>  > What should I do?
>> Lot's of ways to skin this cat/dog.
>>
>> What's wrong with exploding the string using spaces and then walking the
>> array looking for cat and dog while assembling the resultant string?
>>
>> Cheers,
>>
>> tedd
>>
>>
>> --
>> -------
>> http://sperling.com  http://ancientstones.com  http://earthstones.com
>>
>> --
>> PHP General Mailing List (http://www.php.net/)
>> To unsubscribe, visit: http://www.php.net/unsub.php
>>
>>
> 
Certain posts of mine seem to get sucked into a black hole and I never
see theme.  Maybe because I use this list as a newsgroup?  Anyway, what
I posted before:

Match everything but only replace the backreference for the words:


$s = "cats i  saw a cat and a dog";
$r = preg_replace('#.*?(cat|dog).*?#', '\1', $s);

-- 
Thanks!
-Shawn
http://www.spidean.com

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux