You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Thejas M Nair (JIRA)" <ji...@apache.org> on 2011/03/02 17:45:41 UTC

[jira] Updated: (PIG-1770) matches clause problem with chars that have special meaning in dk.brics - #, @ ..

     [ https://issues.apache.org/jira/browse/PIG-1770?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Thejas M Nair updated PIG-1770:
-------------------------------

    Fix Version/s: 0.9.0
           Status: Patch Available  (was: Open)

> matches clause problem with chars that have special meaning in dk.brics - #, @ ..
> ---------------------------------------------------------------------------------
>
>                 Key: PIG-1770
>                 URL: https://issues.apache.org/jira/browse/PIG-1770
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.8.0
>            Reporter: Thejas M Nair
>            Assignee: Thejas M Nair
>             Fix For: 0.9.0, 0.8.0
>
>         Attachments: PIG-1770.1.patch
>
>
> When special chars #, @ , and the 'optional' patterns described here - http://www.brics.dk/automaton/doc/dk/brics/automaton/RegExp.html#RegExp%28java.lang.String%29 are used , the regex match fails to work. 
> This is related to  PIG-965.
> Example and workaround are as follows -
> {code}
> grunt> cat t.txt                           
> asd#asdf
> zxcasdf
> 2#asdf
> grunt> l = load 't.txt' as (a : chararray);
> grunt> f = filter l by (a matches '.*#.*');
> grunt> dump f; 
> -- No output, though two rows are expected.
> --As a workaround, add a \ to escape the # . This regex is valid even in 0.7 , and it will be even after this bug is fixed (its valid java regex, which has same meaning as above regex).
> grunt> f = filter l by (a matches '.*\\#.*');
> grunt> dump f; 
> asd#asdf
> 2#asdf
> {code}

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira