Re: [PHP-DB] Distinct Partial Matches: RegExp
by Micah Stevens other posts by this author
Aug 30 2006 6:30PM messages near this date
Re: [PHP-DB] Distinct Partial Matches: RegExp
|
Re: [PHP-DB] Distinct Partial Matches: RegExp
You can do regular expression matching in MySQL and I think a few other
servers too, but that's not the same as regular expression replacement
like you can do with PHP.. It just returns a boolean true/false
depending on whether or not the match works.
-Micah
J R wrote:
> i'm a bit confused. if i'm getting you right heres my 2 cents:
>
> first you do sql query using DISTINCT
>
> when the result are returned to you, you can then run thru the result
> array
> using preg_replace. heres an example:
>
> $aVar = array(
> 'animal-dog-5',
> 'animal-dog-3',
> 'animal-cat-1',
> 'animal-cat-22',
> 'animal-bird-5',
> );
>
> $aResult = array();
> foreach ($aVar as $value) {
> $tmp = preg_replace('/-\d*$/', '', $value);
> $aResult[$tmp] = $tmp;
> // if you want to conserve a bit of resources asign NULL;
> // $aResult[$tmp] = NULL;
> }
> var_dump($aResult);
>
>
> hth,
>
> john
>
> p.s.
> i'm not sure if it is possible to use regular expression in a sql
> query. can
> anyone comment on this? thanks.
>
> On 8/31/06, Kevin Murphy <php@[...].com> wrote:
> >
> > Well, its not really a search.... that would be way easier. :-) What
> > I'm looking for is a query that will give me the complete list of
> > items that are distinct, minus the last number after the last hyphen.
> >
> > animal-dog
> > animal-cat
> > animal-bird
> >
> > --
> > Kevin Murphy
> > Webmaster: Information and Marketing Services
> > Western Nevada Community College
> > www.wncc.edu
> > 775-445-3326
> >
> >
> > On Aug 30, 2006, at 4:34 PM, Micah Stevens wrote:
> >
> > >
> > > Select DISTINCT area from table like '$searchterms%';
> > >
> > > In SQL, you can use the 'LIKE' keyword along with the '%' and '_'
> > > wildcards.. '_' is one character, '%' is any number of chars.
> > >
> > > -Micah
> > >
> > >
> > > Kevin Murphy wrote:
> > >> This might be really easy, but I'm just not sure how to write this
> > >> query and my searching on google isn't finding me things, probably
> > >> because I am searching for the wrong terms.
> > >>
> > >> I have a bunch of records where the "area" column is like:
> > >>
> > >> animal-dog-5
> > >> animal-dog-3
> > >> animal-cat-1
> > >> animal-cat-22
> > >> animal-bird-5
> > >>
> > >> What I want to do is run a distinct query on just the part
> > >> previous to the number.
> > >>
> > >> animal-dog
> > >> animal-cat
> > >> animal-bird
> > >>
> > >> So in other words, something like this, but I am not sure if this
> > >> is the right way to go:
> > >>
> > >> $query = "SELECT DISTINCT area FROM table WHERE REGEXP
> > >> 'anynumberofletters dash anynumberofletters dash '"
> > >>
> > >>
> > >> Of course, I could be barking up the wrong tree with the REGEXP
> > >> thing. Anyone care to point me in the right direction?
> > >>
> > >>
> > >> --Kevin Murphy
> > >> Webmaster: Information and Marketing Services
> > >> Western Nevada Community College
> > >> www.wncc.edu
> > >> 775-445-3326
> > >>
> > >>
> > >>
> > >>
> > >> --Kevin Murphy
> > >> Webmaster: Information and Marketing Services
> > >> Western Nevada Community College
> > >> www.wncc.edu
> > >> 775-445-3326
> > >>
> > >>
> > >>
> > >
> >
> >
> >
>
>
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
Thread:
Kevin Murphy
Micah Stevens
Kevin Murphy
J R
Micah Stevens
Bastien Koert
J R
Chris
Chris
Micah Stevens
|