I'm trying to create an advanced search feature for my site, and I have it mostly working the way I want. I take whatever search term ($searchkey) that the user submits, explodes if off any spaces between words, and then use that to search for each word separately.

$keys = explode(" ",$searchkey);

So the search phrase of:

Dog Cat Horse

would output :

Array
(
    [0] => Dog
    [1] => Cat
    [2] => Horse
)

However, I would like to add the ability to have phrases in there indicated by " marks. So, if the search phrase was this:

"Dog Cat" Horse

It would output:

Array
(
    [0] => Dog Cat
    [1] => Horse
)

My concept to solve this is right before I explode the keys as above, to replace any spaces within " marks with a garbage string of characters (say XXXXXXXXXX) using a regular expression, and then later replace it back with a space. However, I suck at regular expressions and can't figure it out.

Anyone have a way for me to accomplish this with a regular expression or with another method?

--
Kevin Murphy
Webmaster: Information and Marketing Services
Western Nevada College
www.wnc.edu
775-445-3326

P.S. Please note that my e-mail and website address have changed from wncc.edu to wnc.edu.


Reply via email to