Template:Yesno
{yesno}模板可将字串范式化为yes或no,并提供多种自定义范式化选项。该模板参与构建模板,但不应直接在条目中使用。如有需要用到例如
{subst:#if:{yesno|{1}|yes時文字|no時文字}
時請使用
{subst:#if:{|safesubst:}safeyesno|{1}|}|yes時文字|no時文字}
用法
判定模式
模板有以下五种判定:
- 是 - 输入内容为
yes、y、true、t、1、是(不分大小写) - 否 - 输入内容为
no、n、false、f、0、否(不分大小写) - 空值 - 输入内容为空字串
- 未定义 - 未定义输入内容或输入
¬ - 其他字串 - 输入除上以外的内容
输出内容
- 是 - 返回
|yes=定义的内容,若|yes=未定义则返回yes{yesno|TURE}→ yes{yesno|TURE|yes=对}→ 对
- 否 - 返回
|no=定义的内容,若|no=未定义则返回空白{yesno|0}→ (空白){yesno|0|no=不是}→ 不是
- 空值 - 返回
|blank=定义的内容,若|blank=未定义则返回|no=的定义内容,若|no=也未定义则返回空白{yesno|}→ (空白){yesno||blank=汽车}→ 汽车{yesno||no=火车}→ 火车{yesno||blank=水车|no=电车}→ 水车(优先返回|blank=的定义)
- 未定义 - 返回
|¬=定义的内容,若未定义则返回空白{yesno|¬|¬=¬}→ ¬
- 其他字串- 返回
|def=定义的内容,若未定义则返回|yes=的定义内容,|yes=也未定义则返回yes{yesno|看,飞机}→ yes{yesno|母鸡|def=不合法字串}→ 不合法字串
对比
{yesno}各类输入内容对比
| ||||||
|---|---|---|---|---|---|---|
参数1内容(1=)
|
代码 | 判定逻辑 | 预设返回值 | 如下设定返回结果的返回值:|yes=肯定|no=否定|blank=空白|¬=未定义|def=其他文本
| ||
yes、y、true、1、是(不分大小写)
|
{yesno|yes}
|
是 | yes
|
肯定
| ||
任意文字
|
{yesno|任意文字}
|
是(其他文字的后援判定) | yes
|
其他文本
| ||
no、n、false、0、否(不分大小写)
|
{yesno|no}
|
否 | (空白)
|
否定
| ||
(空白)
|
{yesno|}
|
否(空白的后援判定) | (空白)
|
空白
| ||
1=(空白)
|
{yesno|1=}
|
否(空白的后援判定) | (空白)
|
空白
| ||
¬
|
{yesno|¬}
|
未定义 | (空白)
|
未定义
| ||
(未定义)
|
{yesno}
|
未定义 | (空白)
|
未定义
| ||