"""文本处理模块 - 处理文本换行和格式化""" from typing import List class TextParser: """文本解析器""" def __init__(self, max_length: int = 2000): """ 初始化文本解析器 Args: max_length: 最大文本长度,超过将被截断 """ self.max_length = max_length def parse(self, text: str) -> str: """ 解析文本,将 # 转换为换行符 Args: text: 原始文本,使用 # 表示换行 Returns: 处理后的文本 """ if not text: return "" # 截断超长文本 if len(text) > self.max_length: text = text[:self.max_length] text += "...(文本过长已截断)" # 将 # 替换为换行符 parsed_text = text.replace("#", "\n") return parsed_text def parse_to_lines(self, text: str) -> List[str]: """ 解析文本并返回行列表 Args: text: 原始文本 Returns: 文本行列表 """ parsed_text = self.parse(text) return parsed_text.split("\n") def validate_text(self, text: str) -> bool: """ 验证文本是否有效 Args: text: 待验证的文本 Returns: 是否有效 """ if not text or not isinstance(text, str): return False if len(text.strip()) == 0: return False return True