Might be useful:

http://www.regular-expressions.info/mysql.html
http://www.regular-expressions.info/oracle.html

I used the Oracle version like this:
func.regexp_replace(BillUnion.calldestination, '^\+([0-9]{2})
(0[2-578])?([0-9]*)$', '\\1\\3', 1).label('calldestination')

It is really slow though... :(


On Sep 17, 5:29 pm, "A.M." <age...@themactionfaction.com> wrote:
> On Sep 17, 2010, at 11:12 AM, Michael Bayer wrote:
>
>
>
>
>
>
>
> > On Sep 17, 2010, at 10:58 AM, Michael Bayer wrote:
>
> >> On Sep 17, 2010, at 9:14 AM, Michael Hipp wrote:
>
> >>> On 9/14/2010 2:23 PM, Michael Hipp wrote:
> >>>> Is it possible to use a regexp in a like() clause? Or some other way to 
> >>>> achieve
> >>>> something similar?
>
> >>> Can anyone suggest an approach to search a field with a regexp?
>
> >> if you were using Postgresql, you could use   
> >> somecolumn.op("~")(someregexp)
>
> >>http://www.postgresql.org/docs/8.4/interactive/functions-matching.htm...
>
> >> cant speak for other platforms though you'd have to consult their 
> >> documentation.
>
> > PG also supports MATCH since I see we have some unit tests for that, i.e. 
> > column.match(other).     I'm not seeing offhand in PG's docs what it 
> > interprets the "MATCH" operator as, i.e. is it a "~", "SIMILAR TO", not 
> > sure.
>
> > I guess the reasons I've never had interest in regexp matching in databases 
> > are:
>
> > 1. its always bad to search through tables without being able to use indexes
> > 2. if you're needing to dig into text, it suggests the atoms of that text 
> > should be represented individually in their own column (i.e. normalize)
> > 3. no really, I'm doing flat out full text searching on documents and don't 
> > want to reinvent.  Well then I'd use a full blown text extension 
> > (http://www.postgresql.org/docs/8.3/static/textsearch.html)  or a separate 
> > search engine.
>
> The SQLAlchemy "match" operator compiles to PostgreSQL full-text search (@@ 
> to_tsquery).
> test/dialect/test_postgresql.py
>
> Cheers,
> M

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalch...@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.

Reply via email to