[ 
https://issues.apache.org/jira/browse/NIFI-1919?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15310294#comment-15310294
 ] 

ASF GitHub Bot commented on NIFI-1919:
--------------------------------------

Github user mattyb149 commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/474#discussion_r65358298
  
    --- Diff: 
nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ReplaceEvaluator.java
 ---
    @@ -17,7 +17,6 @@
     package org.apache.nifi.attribute.expression.language.evaluation.functions;
     
     import java.util.Map;
    -
    --- End diff --
    
    nit pick for unnecessary whitespace change with no other changes in the file


> Expression Language only evaluates regular expression replacement on 
> replaceAll, not replace
> --------------------------------------------------------------------------------------------
>
>                 Key: NIFI-1919
>                 URL: https://issues.apache.org/jira/browse/NIFI-1919
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 0.6.1
>            Reporter: Andy LoPresto
>            Assignee: Andy LoPresto
>             Fix For: 1.0.0, 0.7.0
>
>
> When {{${attribute:replaceAll('\w+', 'replacement')}}} is called, the pattern 
> is matched and applied. However, when {{${attribute:replace('\w+', 
> 'replacement')}}} is called, it is not. I believe this is because 
> {{ReplaceAllEvaluator}} uses {{String#replaceAll(String regex, String 
> replacement)}} while {{ReplaceEvaluator}} uses {{String#replace(CharSequence 
> target, CharSequence replacement)}} which then uses 
> {{Pattern.compile(target.toString(), Pattern.LITERAL)}} instead of compiling 
> for a regular expression. I am writing a unit test to demonstrate this and 
> show the results when {{String#replaceFirst()}} is used instead. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to