This is an automated email from the ASF dual-hosted git repository.
exceptionfactory pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git
The following commit(s) were added to refs/heads/main by this push:
new 3af7eb856bf NIFI-16355 Removed redundant character escapes in Regular
Expressions (#11718)
3af7eb856bf is described below
commit 3af7eb856bf95940a54500a826e9f43902680834
Author: dan-s1 <[email protected]>
AuthorDate: Fri Sep 25 15:12:41 2026 -0400
NIFI-16355 Removed redundant character escapes in Regular Expressions
(#11718)
Signed-off-by: David Handermann <[email protected]>
---
.../java/org/apache/nifi/attribute/expression/language/Query.java | 2 +-
.../expression/language/evaluation/cast/DateCastEvaluator.java | 4 ++--
.../expression/language/evaluation/util/NumberParsing.java | 2 +-
.../org/apache/nifi/serialization/record/util/DataTypeUtils.java | 2 +-
.../apache/nifi/record/path/property/RecordPathPropertyUtil.java | 2 +-
.../main/java/org/apache/nifi/syslog/parsers/SyslogParser.java | 8 ++++----
.../org/apache/nifi/processors/gcp/storage/FetchGCSObjectIT.java | 2 +-
.../main/java/org/apache/nifi/processors/hadoop/DeleteHDFS.java | 2 +-
.../org/apache/nifi/processors/hadoop/TestGetHDFSFileInfo.java | 2 +-
.../main/java/org/apache/nifi/processors/standard/CountText.java | 2 +-
.../main/java/org/apache/nifi/processors/standard/PutEmail.java | 2 +-
.../org/apache/nifi/processors/standard/util/FTPTransfer.java | 2 +-
.../org/apache/nifi/processors/standard/hash/HashServiceTest.java | 2 +-
.../main/java/org/apache/nifi/groups/StandardProcessGroup.java | 2 +-
.../apache/nifi/persistence/FlowConfigurationArchiveManager.java | 2 +-
.../org/apache/nifi/web/search/query/RegexSearchQueryParser.java | 2 +-
.../nifi/registry/bundle/extract/nar/NarBundleExtractor.java | 2 +-
17 files changed, 21 insertions(+), 21 deletions(-)
diff --git
a/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/Query.java
b/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/Query.java
index f45031b9a14..f447b253378 100644
---
a/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/Query.java
+++
b/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/Query.java
@@ -249,7 +249,7 @@ public class Query {
* @return un-escaped value
*/
public static String unescape(final String value) {
- return value.replaceAll("\\$\\$(?=\\$*\\{.*?\\})", "\\$");
+ return value.replaceAll("\\$\\$(?=\\$*\\{.*?})", "\\$");
}
public static Query fromTree(final Tree tree, final String text) {
diff --git
a/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/cast/DateCastEvaluator.java
b/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/cast/DateCastEvaluator.java
index cf729f3f5d5..c8684a377a0 100644
---
a/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/cast/DateCastEvaluator.java
+++
b/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/cast/DateCastEvaluator.java
@@ -39,13 +39,13 @@ public class DateCastEvaluator extends DateEvaluator {
public static final String DATE_TO_STRING_FORMAT = "EEE MMM dd HH:mm:ss
zzz yyyy";
public static final DateTimeFormatter DATE_TO_STRING_FORMATTER =
FormatUtils.prepareLenientCaseInsensitiveDateTimeFormatter(DATE_TO_STRING_FORMAT);
- public static final Pattern DATE_TO_STRING_PATTERN =
Pattern.compile("(?:[a-zA-Z]{3} ){2}\\d{2} \\d{2}\\:\\d{2}\\:\\d{2} (?:.*?)
\\d{4}");
+ public static final Pattern DATE_TO_STRING_PATTERN =
Pattern.compile("(?:[a-zA-Z]{3} ){2}\\d{2} \\d{2}:\\d{2}:\\d{2} (?:.*?)
\\d{4}");
public static final String ALTERNATE_FORMAT_WITHOUT_MILLIS = "yyyy/MM/dd
HH:mm:ss";
public static final String ALTERNATE_FORMAT_WITH_MILLIS = "yyyy/MM/dd
HH:mm:ss.SSS";
public static final DateTimeFormatter ALTERNATE_FORMATTER_WITHOUT_MILLIS =
FormatUtils.prepareLenientCaseInsensitiveDateTimeFormatter(ALTERNATE_FORMAT_WITHOUT_MILLIS);
public static final DateTimeFormatter ALTERNATE_FORMATTER_WITH_MILLIS =
FormatUtils.prepareLenientCaseInsensitiveDateTimeFormatter(ALTERNATE_FORMAT_WITH_MILLIS);
- public static final Pattern ALTERNATE_PATTERN =
Pattern.compile("\\d{4}/\\d{2}/\\d{2} \\d{2}\\:\\d{2}\\:\\d{2}(\\.\\d{3})?");
+ public static final Pattern ALTERNATE_PATTERN =
Pattern.compile("\\d{4}/\\d{2}/\\d{2} \\d{2}:\\d{2}:\\d{2}(\\.\\d{3})?");
public static final Pattern NUMBER_PATTERN = Pattern.compile("\\d+");
diff --git
a/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/util/NumberParsing.java
b/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/util/NumberParsing.java
index 5c2948d49bb..32a7c9a8d56 100644
---
a/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/util/NumberParsing.java
+++
b/nifi-commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/util/NumberParsing.java
@@ -24,7 +24,7 @@ public class NumberParsing {
public enum ParseResultType {
NOT_NUMBER, WHOLE_NUMBER, DECIMAL
}
- private static final String OptionalSign = "[\\-\\+]?";
+ private static final String OptionalSign = "[\\-+]?";
private static final String Infinity = "(Infinity)";
private static final String NotANumber = "(NaN)";
diff --git
a/nifi-commons/nifi-record/src/main/java/org/apache/nifi/serialization/record/util/DataTypeUtils.java
b/nifi-commons/nifi-record/src/main/java/org/apache/nifi/serialization/record/util/DataTypeUtils.java
index 37751ef125a..d40fec78b44 100644
---
a/nifi-commons/nifi-record/src/main/java/org/apache/nifi/serialization/record/util/DataTypeUtils.java
+++
b/nifi-commons/nifi-record/src/main/java/org/apache/nifi/serialization/record/util/DataTypeUtils.java
@@ -83,7 +83,7 @@ public class DataTypeUtils {
private static final Logger logger =
LoggerFactory.getLogger(DataTypeUtils.class);
// Regexes for parsing Floating-Point numbers
- private static final String OptionalSign = "[\\-\\+]?";
+ private static final String OptionalSign = "[\\-+]?";
private static final String Infinity = "(Infinity)";
private static final String NotANumber = "(NaN)";
diff --git
a/nifi-extension-bundles/nifi-extension-utils/nifi-record-path-property/src/main/java/org/apache/nifi/record/path/property/RecordPathPropertyUtil.java
b/nifi-extension-bundles/nifi-extension-utils/nifi-record-path-property/src/main/java/org/apache/nifi/record/path/property/RecordPathPropertyUtil.java
index c8004296a33..d9728cf0453 100644
---
a/nifi-extension-bundles/nifi-extension-utils/nifi-record-path-property/src/main/java/org/apache/nifi/record/path/property/RecordPathPropertyUtil.java
+++
b/nifi-extension-bundles/nifi-extension-utils/nifi-record-path-property/src/main/java/org/apache/nifi/record/path/property/RecordPathPropertyUtil.java
@@ -34,7 +34,7 @@ import static java.util.stream.Collectors.toList;
public final class RecordPathPropertyUtil {
private static final String NULL_VALUE = "null";
- private static final Pattern RECORD_PATH_PATTERN =
Pattern.compile("@\\{(/.*?)\\}");
+ private static final Pattern RECORD_PATH_PATTERN =
Pattern.compile("@\\{(/.*?)}");
private RecordPathPropertyUtil() {
}
diff --git
a/nifi-extension-bundles/nifi-extension-utils/nifi-syslog-utils/src/main/java/org/apache/nifi/syslog/parsers/SyslogParser.java
b/nifi-extension-bundles/nifi-extension-utils/nifi-syslog-utils/src/main/java/org/apache/nifi/syslog/parsers/SyslogParser.java
index 4a920c4535b..5f21c114ae8 100644
---
a/nifi-extension-bundles/nifi-extension-utils/nifi-syslog-utils/src/main/java/org/apache/nifi/syslog/parsers/SyslogParser.java
+++
b/nifi-extension-bundles/nifi-extension-utils/nifi-syslog-utils/src/main/java/org/apache/nifi/syslog/parsers/SyslogParser.java
@@ -37,24 +37,24 @@ import java.util.regex.Pattern;
public class SyslogParser {
public static final String SYSLOG_MSG_RFC5424_0 =
- "(?:\\<(\\d{1,3})\\>)" + // priority
+ "(?:<(\\d{1,3})>)" + // priority
"(?:(\\d)?\\s?)" + // version
/* yyyy-MM-dd'T'HH:mm:ss.SZ or
yyyy-MM-dd'T'HH:mm:ss.S+hh:mm or - (null stamp) */
"(?:" +
"(\\d{4}[-]\\d{2}[-]\\d{2}[T]\\d{2}[:]\\d{2}[:]\\d{2}" +
"(?:\\.\\d{1,6})?(?:[+-]\\d{2}[:]\\d{2}|Z)?)|-)" + // stamp
"\\s" + // separator
- "(?:([\\w][\\w\\d\\.@\\-]*)|-)" + // host name or - (null)
+ "(?:([\\w][\\w\\d.@\\-]*)|-)" + // host name or - (null)
"\\s" + // separator
"(.*)$"; // body
public static final String SYSLOG_MSG_RFC3164_0 =
- "(?:\\<(\\d{1,3})\\>)" +
+ "(?:<(\\d{1,3})>)" +
"(?:(\\d)?\\s?)" + // version
// stamp MMM d HH:mm:ss, single digit date has two spaces
"([A-Z][a-z][a-z]\\s{1,2}\\d{1,2}\\s\\d{2}[:]\\d{2}[:]\\d{2})" +
"\\s" + // separator
- "([\\w][\\w\\d(\\.|\\:)@-]*)" + // host
+ "([\\w][\\w\\d(.|:)@-]*)" + // host
"\\s(.*)$"; // body
public static final Collection<Pattern> MESSAGE_PATTERNS;
diff --git
a/nifi-extension-bundles/nifi-gcp-bundle/nifi-gcp-processors/src/test/java/org/apache/nifi/processors/gcp/storage/FetchGCSObjectIT.java
b/nifi-extension-bundles/nifi-gcp-bundle/nifi-gcp-processors/src/test/java/org/apache/nifi/processors/gcp/storage/FetchGCSObjectIT.java
index 49d993086f8..2703d3ffba4 100644
---
a/nifi-extension-bundles/nifi-gcp-bundle/nifi-gcp-processors/src/test/java/org/apache/nifi/processors/gcp/storage/FetchGCSObjectIT.java
+++
b/nifi-extension-bundles/nifi-gcp-bundle/nifi-gcp-processors/src/test/java/org/apache/nifi/processors/gcp/storage/FetchGCSObjectIT.java
@@ -89,7 +89,7 @@ public class FetchGCSObjectIT extends AbstractGCSIT {
final List<ConfigVerificationResult> results =
processor.verify(runner.getProcessContext(), runner.getLogger(), attributes);
assertEquals(3, results.size());
assertEquals(ConfigVerificationResult.Outcome.SUCCESSFUL,
results.get(1).getOutcome());
- assertTrue(results.get(2).getExplanation().matches("Successfully
fetched \\[delete-me\\] from Bucket \\[gcloud-test-bucket-temp-.*\\], totaling
3 bytes"));
+ assertTrue(results.get(2).getExplanation().matches("Successfully
fetched \\[delete-me] from Bucket \\[gcloud-test-bucket-temp-.*], totaling 3
bytes"));
runner.assertAllFlowFilesTransferred(FetchGCSObject.REL_SUCCESS, 1);
final List<MockFlowFile> ffs =
runner.getFlowFilesForRelationship(FetchGCSObject.REL_SUCCESS);
diff --git
a/nifi-extension-bundles/nifi-hadoop-bundle/nifi-hdfs-processors/src/main/java/org/apache/nifi/processors/hadoop/DeleteHDFS.java
b/nifi-extension-bundles/nifi-hadoop-bundle/nifi-hdfs-processors/src/main/java/org/apache/nifi/processors/hadoop/DeleteHDFS.java
index 2d72225d83b..eb75a20ad90 100644
---
a/nifi-extension-bundles/nifi-hadoop-bundle/nifi-hdfs-processors/src/main/java/org/apache/nifi/processors/hadoop/DeleteHDFS.java
+++
b/nifi-extension-bundles/nifi-hadoop-bundle/nifi-hdfs-processors/src/main/java/org/apache/nifi/processors/hadoop/DeleteHDFS.java
@@ -96,7 +96,7 @@ public class DeleteHDFS extends AbstractHadoopProcessor {
.addValidator(StandardValidators.NON_EMPTY_VALIDATOR)
.build();
- protected static final Pattern GLOB_PATTERN =
Pattern.compile("\\[|\\]|\\*|\\?|\\^|\\{|\\}|\\\\c");
+ protected static final Pattern GLOB_PATTERN =
Pattern.compile("\\[|]|\\*|\\?|\\^|\\{|}|\\\\c");
protected final Matcher globMatcher = GLOB_PATTERN.matcher("");
private static final Set<Relationship> RELATIONSHIPS = Set.of(
diff --git
a/nifi-extension-bundles/nifi-hadoop-bundle/nifi-hdfs-processors/src/test/java/org/apache/nifi/processors/hadoop/TestGetHDFSFileInfo.java
b/nifi-extension-bundles/nifi-hadoop-bundle/nifi-hdfs-processors/src/test/java/org/apache/nifi/processors/hadoop/TestGetHDFSFileInfo.java
index 5ee1fd7ea73..1b07de8a1c4 100644
---
a/nifi-extension-bundles/nifi-hadoop-bundle/nifi-hdfs-processors/src/test/java/org/apache/nifi/processors/hadoop/TestGetHDFSFileInfo.java
+++
b/nifi-extension-bundles/nifi-hadoop-bundle/nifi-hdfs-processors/src/test/java/org/apache/nifi/processors/hadoop/TestGetHDFSFileInfo.java
@@ -44,7 +44,7 @@ import java.util.stream.Collectors;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class TestGetHDFSFileInfo {
- private static final Pattern SINGLE_JSON_PATTERN =
Pattern.compile("^\\{[^\\}]*\\}$");
+ private static final Pattern SINGLE_JSON_PATTERN =
Pattern.compile("^\\{[^}]*}$");
private TestRunner runner;
private GetHDFSFileInfoWithMockedFileSystem proc;
diff --git
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/CountText.java
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/CountText.java
index b919d52901c..a2758f15c5e 100644
---
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/CountText.java
+++
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/CountText.java
@@ -77,7 +77,7 @@ public class CountText extends AbstractProcessor {
StandardCharsets.UTF_16BE
);
- private static final Pattern SYMBOL_PATTERN =
Pattern.compile("[\\s-\\._]");
+ private static final Pattern SYMBOL_PATTERN = Pattern.compile("[\\s-._]");
private static final Pattern WHITESPACE_ONLY_PATTERN =
Pattern.compile("\\s");
// Attribute keys
diff --git
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutEmail.java
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutEmail.java
index 9ef91b15acf..f8e9b1bab18 100644
---
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutEmail.java
+++
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutEmail.java
@@ -91,7 +91,7 @@ import java.util.regex.Pattern;
+ "will be read into memory in case the property to use the flow file
content as the email body is set to true.")
public class PutEmail extends AbstractProcessor {
- private static final Pattern MAIL_PROPERTY_PATTERN =
Pattern.compile("^mail\\.smtps?\\.([a-z0-9\\.]+)$");
+ private static final Pattern MAIL_PROPERTY_PATTERN =
Pattern.compile("^mail\\.smtps?\\.([a-z0-9.]+)$");
public static final PropertyDescriptor SMTP_HOSTNAME = new
PropertyDescriptor.Builder()
.name("SMTP Hostname")
diff --git
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FTPTransfer.java
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FTPTransfer.java
index 8ef1ea0312e..2feeb768268 100644
---
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FTPTransfer.java
+++
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FTPTransfer.java
@@ -366,7 +366,7 @@ public class FTPTransfer implements FileTransfer {
ensureDirectoryExists(flowFile, directoryName.getParentFile());
}
- final String remoteDirectory =
directoryName.getAbsolutePath().replace("\\", "/").replaceAll("^.\\:", "");
+ final String remoteDirectory =
directoryName.getAbsolutePath().replace("\\", "/").replaceAll("^.:", "");
final FTPClient client = getClient(flowFile);
final boolean cdSuccessful = setWorkingDirectory(remoteDirectory);
diff --git
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/hash/HashServiceTest.java
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/hash/HashServiceTest.java
index 1c85c465ba0..f66661047cc 100644
---
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/hash/HashServiceTest.java
+++
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/hash/HashServiceTest.java
@@ -336,6 +336,6 @@ public class HashServiceTest {
}
private static String translateStringToMapKey(String string) {
- return string.toLowerCase().replaceAll("[-\\/]", "_");
+ return string.toLowerCase().replaceAll("[-/]", "_");
}
}
diff --git
a/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
b/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
index 600178a6866..eb9ae6ee06f 100644
---
a/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
+++
b/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
@@ -233,7 +233,7 @@ public final class StandardProcessGroup implements
ProcessGroup {
private static final String DEFAULT_FLOWFILE_EXPIRATION = "0 sec";
private static final long DEFAULT_BACKPRESSURE_OBJECT = 10_000L;
private static final String DEFAULT_BACKPRESSURE_DATA_SIZE = "1 GB";
- private static final Pattern INVALID_DIRECTORY_NAME_CHARACTERS =
Pattern.compile("[\\s\\<\\>:\\'\\\"\\/\\\\\\|\\?\\*]");
+ private static final Pattern INVALID_DIRECTORY_NAME_CHARACTERS =
Pattern.compile("[\\s<>:'\"/\\\\|?*]");
private static final String PATH_SEPARATOR = "/";
private static final String VERSION_SEPARATOR = ":";
private static final String STANDARD_PROCESS_GROUP_NAME =
"StandardProcessGroup";
diff --git
a/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/persistence/FlowConfigurationArchiveManager.java
b/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/persistence/FlowConfigurationArchiveManager.java
index 737061b2376..5a85acc6b60 100644
---
a/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/persistence/FlowConfigurationArchiveManager.java
+++
b/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/persistence/FlowConfigurationArchiveManager.java
@@ -51,7 +51,7 @@ public class FlowConfigurationArchiveManager {
* <li>yyyyMMddTHHmmss-HHmm_original-file-name</li>
* <li>yyyyMMddTHHmmssZ_original-file-name</li>
*/
- private final Pattern archiveFilenamePattern =
Pattern.compile("^([\\d]{8}T[\\d]{6}([\\+\\-][\\d]{4}|Z))_.+$");
+ private final Pattern archiveFilenamePattern =
Pattern.compile("^([\\d]{8}T[\\d]{6}([+\\-][\\d]{4}|Z))_.+$");
private final Path archiveDir;
private final Integer maxCount;
private final Long maxTimeMillis;
diff --git
a/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/search/query/RegexSearchQueryParser.java
b/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/search/query/RegexSearchQueryParser.java
index f746cc6f133..d924783de1f 100644
---
a/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/search/query/RegexSearchQueryParser.java
+++
b/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/search/query/RegexSearchQueryParser.java
@@ -28,7 +28,7 @@ import java.util.stream.Collectors;
public class RegexSearchQueryParser implements SearchQueryParser {
private static final String REGEX =
"(?<filter>(\\w+:[\\w-]+\\s+)*(\\w+:[\\w-]+)?)(?<term>.*)";
- private static final String FILTER_TOKEN_SEPARATOR = "\\:";
+ private static final String FILTER_TOKEN_SEPARATOR = ":";
private static final String FILTER_SEPARATOR = "[\\s]+";
private static final String FILTER_GROUP = "filter";
private static final String TERM_GROUP = "term";
diff --git
a/nifi-registry/nifi-registry-core/nifi-registry-bundle-utils/src/main/java/org/apache/nifi/registry/bundle/extract/nar/NarBundleExtractor.java
b/nifi-registry/nifi-registry-core/nifi-registry-bundle-utils/src/main/java/org/apache/nifi/registry/bundle/extract/nar/NarBundleExtractor.java
index 72fd3219bbe..9da91e9d7d0 100644
---
a/nifi-registry/nifi-registry-core/nifi-registry-bundle-utils/src/main/java/org/apache/nifi/registry/bundle/extract/nar/NarBundleExtractor.java
+++
b/nifi-registry/nifi-registry-core/nifi-registry-bundle-utils/src/main/java/org/apache/nifi/registry/bundle/extract/nar/NarBundleExtractor.java
@@ -59,7 +59,7 @@ public class NarBundleExtractor implements BundleExtractor {
* The pattern of a JarEntry for additionalDetails.md entries.
*/
private static final Pattern ADDITIONAL_DETAILS_ENTRY_PATTERN =
-
Pattern.compile("META-INF\\/docs\\/additional-details\\/(.+)\\/additionalDetails.md");
+
Pattern.compile("META-INF/docs/additional-details/(.+)/additionalDetails.md");
/**
* The format of the date string in the NAR MANIFEST for Built-Timestamp.