酒馆正则与脚本使用教程:从新手到进阶
酒馆正则与脚本使用教程:从新手到进阶
Contents
正则表达式与酒馆助手脚本是 SillyTavern 中用于文本处理和交互功能的核心工具。正则负责查找和替换文本,而脚本则能执行更复杂的逻辑和交互。本教程将帮助你快速上手这两者,并解决常见问题。
正则表达式是什么?它能做什么?
正则表达式(Regex)是一套文本匹配规则,用于查找、提取和替换特定模式的文本。在酒馆中,正则常用于以下场景:
- 美化界面:将纯文本标记(如状态栏标签)替换为美观的 HTML 结构。
- 隐藏内容:折叠模型的思考链或删除出戏旁注(如 OOC 旁白)。
- 清理文本:去除多余的符号或格式化输出的内容。
正则的核心是“查找并替换”,但它不适合处理复杂的交互逻辑(如状态更新、按钮点击)。
酒馆助手脚本是什么?它能做什么?
酒馆助手脚本是在 SillyTavern 页面环境中运行的 JavaScript 代码,具备以下能力:
- 数据读写:读取和修改变量、设置、消息与世界书数据。
- 界面构建:创建状态栏、控制中心、弹窗、按钮等交互元素。
- 事件监听:响应生成、变量更新、对话切换等事件。
脚本适合处理复杂的交互逻辑,例如点击按钮后更新状态或管理生命周期。
正则与脚本的区别是什么?
以下是两者的核心区别:
| 需求 | 正则 | 酒馆助手脚本 |
|---|---|---|
| 隐藏指定标签 | ✔️ | 通常没必要 |
| 将文本替换为静态卡片 | ✔️ | 也可以 |
| 点击按钮后读写变量 | ✖️ | ✔️ |
| 变量变化后刷新状态栏 | ✖️ | ✔️ |
| 加载远程数据并处理失败 | ✖️ | ✔️ |
| 管理复杂 UI 和状态链 | ✖️ | ✔️ |
简单口诀:
- 如果需要“找出来、藏起来、换个样子”,用正则。
- 如果需要“点了以后做事、数据变化后刷新、失败后给反馈”,用脚本。
如何使用正则表达式?
前置准备
- SillyTavern 运行环境。
- 带正则的角色卡或预设。
分步教程
- 导入正则:点击「设置 → 角色卡与酒馆 → 从酒馆导入」,选择带正则的文件。
- 启用正则:在「酒馆全局设置 → 预设 / 正则 / 宏」中启用导入的正则。
- 测试效果:发一条消息,观察文本是否被替换或状态栏是否美化。
- 排查问题:如果文本消失或异常,检查替换串是否写错,关闭或修改相关规则。
如何使用酒馆助手脚本?
前置准备
- JavaScript 基础。
- SillyTavern 支持脚本的运行环境。
分步教程
- 创建脚本:在脚本编辑器中编写逻辑,例如读取变量或创建按钮。
- 监听事件:绑定脚本到生成、变量更新等事件。
- 测试交互:点击按钮或触发事件,观察状态栏或数据是否更新。
- 优化性能:确保脚本在页面加载、卸载时正确清理资源。
常见问题排查
正则问题
- 文本消失:检查替换串是否为空,停用相关规则。
- 美化不生效:确认正则的执行时机(双向、仅显示、仅提示词)。
脚本问题
- 按钮无功能:确保脚本绑定了点击事件并执行写入逻辑。
- 状态未更新:检查变量是否正确写入,监听器是否正确绑定。
FAQ
正则美化会不会乱改我的聊天记录?
不会。美化正则走「仅显示」时机,只改渲染效果,聊天记录原封不动。
脚本能管理世界书吗?
能。脚本可以创建、更新和卸载世界书条目,但需确保不覆盖用户修改的内容。
正则和脚本可以一起用吗?
可以。正则处理文本替换,脚本管理交互逻辑,两者可以配合使用。
想了解更多关于正则和脚本的高级用法,请访问 tuniang.ai。