This repository was archived by the owner on Aug 26, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
Alconna Arpamar
Tarrailt edited this page Jan 16, 2022
·
1 revision
Alconna
会将解析的结果包装为一个Arpamar
返回,你可以通过Arpamar
获取解析成功的值
通过如下方式来使用Arpamar
:
-
Arpamar.main_args
: 当Alconna
写入了main_args
时,该参数返回对应的解析出来的值 -
Arpamar.header
: 当Alconna
的command
内写有正则表达式时,该参数返回对应的匹配值; 若未写, 返回命令头是否匹配成功 -
Arpamar.all_matched_args
: 返回Alconna
中所有Args
解析到的值 -
Arpamar.option_args
: 返回Alconna
中所有Option
与Subcommand
里的Args
解析到的值 -
Arpamar.has
: 判断 Arpamar 内是否有对应的属性 -
Arpamar.get
: 返回 Arpamar 中指定的属性 -
Arpamar.matched
: 返回命令是否匹配成功 -
Arpamar.error_data
: 当匹配失败时,该参数为剩余未解析的参数
另外, 可直接通过Arpamar.xxx
来获取 xxx
属性
>>> alc = Alconna(
... command="test",
... options=[
... Option("name", Args["pak":str]),
... Option("foo", Args["bar":bool:True])
... ]
... )
>>> msg = MessageChain.create("test name ces foo False")
>>> result = alc.analyse_message(msg)
>>> result.pak
'ces'
>>> result.bat
False