diff --git a/aiogram/utils/parts.py b/aiogram/utils/parts.py
index <HASH>..<HASH> 100644
--- a/aiogram/utils/parts.py
+++ b/aiogram/utils/parts.py
@@ -15,12 +15,13 @@ def split_text(text: str, length: int = MAX_MESSAGE_LENGTH) -> typing.List[str]:
     return [text[i:i + length] for i in range(0, len(text), length)]
 
 
-def safe_split_text(text: str, length: int = MAX_MESSAGE_LENGTH) -> typing.List[str]:
+def safe_split_text(text: str, length: int = MAX_MESSAGE_LENGTH, split_separator: str = ' ') -> typing.List[str]:
     """
     Split long text
 
     :param text:
     :param length:
+    :param split_separator
     :return:
     """
     # TODO: More informative description
@@ -30,7 +31,7 @@ def safe_split_text(text: str, length: int = MAX_MESSAGE_LENGTH) -> typing.List[
     while temp_text:
         if len(temp_text) > length:
             try:
-                split_pos = temp_text[:length].rindex(' ')
+                split_pos = temp_text[:length].rindex(split_separator)
             except ValueError:
                 split_pos = length
             if split_pos < length // 4 * 3:
Update safe_split_text function, added split_separator param (#<I>)