You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何按AA对字符串分组,在下一个AA出现前完成对应内容分词

实现方案

完全可以实现,不需要复杂分词处理,通过逐行识别AA开头的行作为分组边界即可完成需求,逻辑简单且性能更高。

核心实现逻辑

  • 先将原始字符串按换行符拆分为逐行列表,按需过滤掉无效空行
  • 初始化分组结果容器、当前分组临时容器两个变量
  • 逐行遍历所有内容:
    • 遇到AA开头的行时,若当前临时容器已有内容,就将临时容器内容存入最终结果,再将当前行作为新分组的起始内容放入临时容器
    • 非AA开头的行直接追加到当前临时容器中
  • 遍历结束后将最后一组未存入结果的内容补入结果列表

示例代码(Python实现)

import re

# 原始字符串
raw_text = """AA 12345678910
BB TESTTESTTEST
BB TESTTESTTEST
BB TESTTESTTEST
CC TEST
AA 0897654321
BB TESTTESTTEST
CC TEST"""

# 拆分+过滤空行
lines = [line.strip() for line in raw_text.splitlines() if line.strip()]
groups = []
current_group = []

for line in lines:
    # 匹配AA开头的分组边界,用正则匹配单词边界避免误判内容里自带AA的行
    if re.match(r'^AA\b', line):
        if current_group:
            groups.append(current_group)
        current_group = [line]
    else:
        current_group.append(line)
# 追加最后一组
if current_group:
    groups.append(current_group)

# 打印分组结果验证
for i, group in enumerate(groups, 1):
    print(f"第{i}组内容:")
    print("\n".join(group))
    print("="*30)

运行输出结果

第1组内容:
AA 12345678910
BB TESTTESTTEST
BB TESTTESTTEST
BB TESTTESTTEST
CC TEST
==============================
第2组内容:
AA 0897654321
BB TESTTESTTEST
CC TEST
==============================

内容的提问来源于stack exchange,提问作者CoolBlue

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 12:06:05