字符索引字符串处理工具
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-rn88lg3j/char-indexes。
技能介绍
要解决的问题
在生成测试用例、清洗文本或拆分协议字段时,真正需要处理的往往不是整条字符串,而是某个字符、子串或标记出现的第 n 个位置。若手写脚本硬算,很容易在“从 0 还是从 1 开始”“区间是否包含右端点”“负数索引如何解释”等细节上反复返工。这个技能把这类索引计算收敛到一组明确工具中。
核心能力
- 定位:
scripts.tools.find_nth_char、find_all_char_indices、find_nth_substring、find_all_substring_indices处理字符/子串的第 n 次出现与全部出现位置;未找到时按约定返回-1或空列表。 - 拆分与抽取:
split_at_indices在给定索引处切分;extract_substrings按索引区间取子串;extract_between_markers按标记抽取内容并返回位置信息。 - 区间编辑:
insert_at_index在索引处插入,delete_range删除[start, end),replace_range替换[start, end)。 - 匹配与统计:
find_regex_matches返回{start, end, match}列表;count_chars统计总数、去空格数、字母、数字、空格和特殊字符。
工作流程
模型先理解意图并选择工具,再抽取参数;例如需要“找第 2 个 ,”时调用 find_nth_char(text=..., char=',', n=2)。工具统一返回 result["raw"]、result["success"]、result["message"],展示层负责整理 raw 给用户。若参数不完整,需要先询问缺失项。
适用边界
它适合以字符索引为核心的文本处理、测试数据生成和结构化抽取,不适合替代完整 NLP 分词、语义理解或通用代码执行环境。使用前必须配置 API 密钥:若 scripts.config.settings.api_key 为空,应先通过 AskUserQuestion 询问,并用 scripts.config.set_api_key(key) 保存;缺少密钥时不得自行搜索或编造结果。
使用场景
- 在写接口用例时,需要定位字符串里第 n 个逗号或分号的位置
- 批量生成测试数据时,要按固定索引切分文本并检查各段长度
- 清洗导出文件时,需要删除某个字符区间或替换标记之间的内容
- 从结构化日志中抽取字段时,要按标记和位置提取内容
适合人员
- 需要生成参数化测试用例的后端工程师,希望用索引结果驱动断言
- 做数据清洗的工程师,要在指定位置切分或改写字段
- 编写文本处理工具文档的技术作者,需要列出可复用的索引操作
- 维护样例语料的测试工程师,需要统计字符构成并抽取片段