Thread

  1. Broken select on regular expression !!!

    Constantin Teodorescu <teo@flex.ro> — 1999-05-19T13:49:57Z

    Hi all,
    
    I think I have found a bug in regexp based selections.
    Watch this :
    
    create table regdemo (fld1 varchar(32));
    CREATE
    insert into regdemo values('410');
    INSERT 726409 1
    insert into regdemo values('7410');
    INSERT 726410 1
    insert into regdemo values('source');
    INSERT 726411 1
    insert into regdemo values('destination');
    INSERT 726412 1
    select * from regdemo where fld1 ~* '^sou|^des';
    fld1
    -----------
    source
    destination
    (2 rows)
    
    select * from regdemo where fld1 ~* '41|^des';
    fld1
    -----------
    410
    7410
    destination
    (3 rows)
    
    select * from regdemo where fld1 ~* '^41|^des';
    fld1
    ----
    (0 rows)
    
    ^^^^^^^^^^^^^^
    !?!?!?!
    I thought it should return '410' and 'destination' rows. But it returns
    nothing!
    The first select example with ^ in both variants ( ^sou|^des ) works !!!
    The last one ( ^41|^des ) don't !
    
    Am I missing something?
    I am getting the same result also on 6.4.2 and 6.5 beta 1 versions!
    
    Best regards,
    -- 
    Constantin Teodorescu
    FLEX Consulting Braila, ROMANIA