regular expression "not match"

Giorgos Keramidas keramida at ceid.upatras.gr
Fri Sep 5 07:02:06 EEST 2008


On Fri, 5 Sep 2008 06:45:59 +0300, Michael Iatrou <m.iatrou at freemail.gr> wrote:
> When the date was Thursday 04 September 2008, Θοδωρής Λύτρας wrote:
>> Έχω μια πονηρή ερωτησούλα, γιατί από αυτά που διάβασα φοβούμαι οτι δε
>> γίνεται...
>>
>> Έχω ένα string π.χ.:
>>
>> abcd{efgh}ijkl
>>
>> To regexp {.*} ταιριάζει στο substring {efgh}.
>> Εγώ όμως θέλω να κάνω match το abcdijkl, δηλαδή έναν η περισσότερους
>> χαρακτήρες που ΔΕΝ εσωκλείονται σε { } .
>> Υπάρχει κάποιο regexp για να το πετύχω αυτό???
>
> $ echo 'abcd{efgh}ijkl' | perl -ne 'print "$1$2\n" if /(.+?)\{.+?\}(.+)/'
> abcdijkl

Φφφφφ... Perl users :P

    $ echo 'abcd{efgh}ijkl' | sed -e 's/{[^}]*}//'
    abcdijkl

[Προφανώς και υπάρχουν περίπου 6,920,938,463,463,374,607,431,768,211,456
τρόποι να κάνουμε αυτό που θέλει ο Θοδωρής.  Αρκεί να μας πει τι ακριβώς
προσπαθεί να κάνει, αντί να μας προκαλεί να βρούμε "πονηρά" τρυκ για να
δείξουμε πόσο μεγάλη την έχουμε τη regexp library μας.]



More information about the Linux-greek-users mailing list