(text: string)
| 103 | * 清理文本:移除 URL、@提及、表情、标点等 |
| 104 | */ |
| 105 | export function cleanText(text: string): string { |
| 106 | return text |
| 107 | .replace(URL_REGEX, ' ') |
| 108 | .replace(MENTION_REGEX, ' ') |
| 109 | .replace(SYSTEM_PLACEHOLDER_REGEX, ' ') |
| 110 | .replace(BRACKET_EMOJI_PLACEHOLDER_REGEX, (match, name: string) => { |
| 111 | if (BRACKET_EMOJI_MAP[name]) return BRACKET_EMOJI_MAP[name] |
| 112 | return CJK_TEXT_REGEX.test(name) ? ' ' : match |
| 113 | }) |
| 114 | .replace(EMOJI_REGEX, ' ') |
| 115 | .replace(EMOJI_VARIATION_SELECTOR_REGEX, ' ') |
| 116 | .replace(PUNCTUATION_REGEX, ' ') |
| 117 | .replace(/\s+/g, ' ') |
| 118 | .trim() |
| 119 | } |
| 120 | |
| 121 | /** |
| 122 | * 判断是否为有效词语 |
no outgoing calls
no test coverage detected