[
https://issues.apache.org/jira/browse/NIFI-3837?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16007547#comment-16007547
]
ASF GitHub Bot commented on NIFI-3837:
--------------------------------------
Github user mattyb149 commented on the issue:
https://github.com/apache/nifi/pull/1781
+1 LGTM, verified the unit test fails without the fix. Thanks much, merging
to master
> ReplaceText - Backreference escape issue in Regex Replace mode when using EL
> ----------------------------------------------------------------------------
>
> Key: NIFI-3837
> URL: https://issues.apache.org/jira/browse/NIFI-3837
> Project: Apache NiFi
> Issue Type: Bug
> Components: Extensions
> Reporter: Matt Gilman
> Assignee: Matt Gilman
> Priority: Minor
> Fix For: 1.3.0
>
>
> When using ReplaceText in Regex Replace mode, $'s may be incorrectly
> interrupted as a backreference and escaped. Given input
> {noformat}'ma$tt'{noformat} and the following ReplaceText configuration:
> {code}
> Search Value - (?s)(^.*$)
> Replacement Value - ${'$1'}
> Character Set - UTF-8
> Maximum Buffer Size - 1 MB
> Replacement Strategy - Regex Replace
> Evaluation Mode - Entire text
> {code}
> The resulting output is {noformat}'ma\$tt'{noformat}
> The issue appears to be that this regular expression is too general [1]. This
> happens when the replacement string uses expression language. It appears as
> though all backreferences will be escaped.
> [1]
> https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ReplaceText.java#L500
>
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)