The Regex Story

Alf P. Steinbach alfps at start.no
Fri Apr 9 05:12:37 EDT 2010


* Steven D'Aprano:
> 
> For some reason, people seem to have the idea that pattern matching of 
> strings must be a single expression, no matter how complicated the 
> pattern they're trying to match. If we have a complicated task to do in 
> almost any other field, we don't hesitate to write a function to do it, 
> or even multiple functions: we break our code up into small, 
> understandable, testable pieces. We recognise that a five-line function 
> may very well be less complex than a one-line expression that does the 
> same thing. But if it's a string pattern matching task, we somehow become 
> resistant to the idea of writing a function and treat one-line 
> expressions as "simpler", no matter how convoluted they become.
> 
> It's as if we decided that every maths problem had to be solved by a 
> single expression, no matter how complex, and invented a painfully terse 
> language unrelated to normal maths syntax for doing so:
> 
> # Calculate the roots of sin**2(3*x-y):
> result = me.compile("{^g.?+*y:h}|\Y^r&(?P:2+)|\w+(x&y)|[?#\s]").solve()

http://www.youtube.com/watch?v=a9xAKttWgP4


Cheers,

- Alf



More information about the Python-list mailing list