diff --git a/src/main/java/com/github/difflib/text/DiffRowGenerator.java b/src/main/java/com/github/difflib/text/DiffRowGenerator.java index 30e1694..6dd056e 100644 --- a/src/main/java/com/github/difflib/text/DiffRowGenerator.java +++ b/src/main/java/com/github/difflib/text/DiffRowGenerator.java @@ -49,9 +49,10 @@ import java.util.regex.Pattern; public class DiffRowGenerator { public static final Pattern SPLIT_BY_WORD_PATTERN = Pattern.compile("\\s+|[,.\\[\\](){}/\\\\*+\\-#]"); + public static final Pattern WHITESPACE_PATTERN = Pattern.compile("\\s+"); public static final BiPredicate IGNORE_WHITESPACE_EQUALIZER = (original, revised) - -> original.trim().replaceAll("\\s+", " ").equals(revised.trim().replaceAll("\\s+", " ")); + -> adjustWhitespace(original).equals(adjustWhitespace(revised)); public static final BiPredicate DEFAULT_EQUALIZER = Object::equals; @@ -468,4 +469,8 @@ public class DiffRowGenerator { } return list; } + + private static String adjustWhitespace(String raw) { + return WHITESPACE_PATTERN.matcher(raw.trim()).replaceAll(" "); + } }