diff --git a/platform/util/src/com/intellij/openapi/util/text/StringUtil.java b/platform/util/src/com/intellij/openapi/util/text/StringUtil.java
index dcb3697ac890..9ccaf0f9c14e 100644
--- a/platform/util/src/com/intellij/openapi/util/text/StringUtil.java
+++ b/platform/util/src/com/intellij/openapi/util/text/StringUtil.java
@@ -2222,6 +2222,20 @@ public class StringUtil extends StringUtilRt {
return EOL_SPLIT_DONT_TRIM_PATTERN.split(string);
}
+ /**
+ * Splits string by lines, keeping all line separators at the line ends and in the empty lines.
+ *
E.g. splitting text
+ *
+ * foo\r\n+ * will return the following array: foo\r\n, \n, bar\n, \r\n, baz\r, \r + * + */ @NotNull public static String[] splitByLinesKeepSeparators(@NotNull String string) { return EOL_SPLIT_KEEP_SEPARATORS.split(string);
+ * \n
+ * bar\n
+ * \r\n
+ * baz\r
+ * \r
+ *