diff --git a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/FeedCleaner.java b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/FeedCleaner.java index 97aabb4a..127a388e 100644 --- a/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/FeedCleaner.java +++ b/commafeed-server/src/main/java/com/commafeed/backend/feed/parser/FeedCleaner.java @@ -15,6 +15,8 @@ public class FeedCleaner { private static final Pattern DOCTYPE_PATTERN = Pattern.compile("]*>", Pattern.CASE_INSENSITIVE); + private final Trie trie = Trie.builder().ignoreOverlaps().addKeywords(HtmlEntities.HTML_ENTITIES).build(); + public String clean(String xml) { xml = removeCharactersBeforeFirstXmlTag(xml); xml = removeInvalidXmlCharacters(xml); @@ -52,7 +54,7 @@ public class FeedCleaner { // Create a buffer sufficiently large that re-allocations are minimized. StringBuilder sb = new StringBuilder(source.length() << 1); - Collection emits = Trie.builder().ignoreOverlaps().addKeywords(HtmlEntities.HTML_ENTITIES).build().parseText(source); + Collection emits = trie.parseText(source); int prevIndex = 0; for (Emit emit : emits) {