增加文本匹配后的参数替换功能,在SubscriberHandler里设置。
该功能会在事件提供的messageChain参数通过了sh设置的Command解析器并且该Command内含有提取文本的正则的情况下,将匹配出来的内容根据设定的参数来决定是否替换掉原来的messageChain的内容(注意,Source元素不会被替换掉)
例子:
python
ed.register("FriendMessage")
sh.set(command=Command(["cmd.", "bot"], [f"{AnyStr}天气", ["=", AnyStr, ""], ""]),
require_param_name="city",
is_replace_message=True)
async def test1(city: MessageChain):
print(city.to_text())
则Command匹配成功的情况下会把event原先传给city的messageChain的内容替换AnyStr匹配得到的结果
如果 `is_replace_message`为False,则event的messageChain保持不变
另外:
- 修复At元素不能发出的bug