当前位置:首页>iOSAPP>iOS快捷指令:放假调休?不怕不怕啦

iOS快捷指令:放假调休?不怕不怕啦

  • 2026-11-02 09:15:41
iOS快捷指令:放假调休?不怕不怕啦
过完五一
9号补班
我来看看
谁的闹钟没响👻
🚗上篇专栏文章从0搭建了「大小周」闹钟:
iOS快捷指令:大小周?你也行!
那对于正常双休的朋友们(我这个羡慕嫉妒恨吖),可以移除「大小周」的逻辑,补充「节假日」的逻辑,就OK啦
🧩在此基础上,补充「节假日」的判断,进化成完整版的闹钟指令。那么本篇我们会习得以下技能:
1.订阅日历
2.获取日程,以及日程数量的坑
3.重复(循环)
4.匹配文本(查找关键词),以及匹配结果的坑
5.指令的模块化(拆分和复用),以及一个指定如何调用另一个指令
6.操作闹钟
7.自动化
🍺老规矩,在动手编排指令之前,先思考下:怎么判断某天是不是节假日(不上班),某天要不要补班(上班)
1️⃣先看下日历App,标记了五一劳动节的调休与补班。
2️⃣有了这些「休」和「班」日程,就有了节假日的准确依据。在指令中可以获取,作为判断的依据。
3️⃣标有「休」的日期,不论之前判断的结果是什么,都归结为「不上班」,最终输出0。
4️⃣类似的,标有「班」的日期,都是「上班」,最终输出1。
5️⃣没有标记「休」,也没有标记「班」,那就什么也不做,不改动之前的判断结果。
❓日期右上角没有「休」、「班」的标记?需要订阅节假日日历。
看下是否订阅了「中国大陆节假日」这个日历,或者自己添加一下。

ℹ️指令的模块化(复用)

这篇文章中的指令操作,其实可以直接追加到「大小周闹钟」那个指令中去,不过由于那个指令已经很多操作,再追加就太臃肿。正好这里介绍一下模块化的概念:
一个简单特定的功能,单独做成一个指令,可以类比成机器中的一个具有特定功能的配件,闹钟指令可以复用,有需要的话其他指令也可以复用。

🔍截图中的指令操作,不知道怎么添加进来?

指令长截图的右侧,带有放大镜「🔍」的批注,就是该操作的名称,按这个搜索,就能找到对应的操作
🚀理论搞定!开始动手编排指令。
⚠️日程的个数
通常我们的日历中,一天之内不会有太多日程,想象一下,某天安排了100个事情要做,比皇帝还要忙是嘛😂
但还是要考虑到日程最多可能有多少,假如当天一共有5个日程,但只获取了3个日程,节假日日程是有可能遗漏,造成判断错误。
因此获取日程的时候,设定的数量足够大即可。日理万机的朋友,不妨就设置10000好了🐶
ℹ️重复(循环)
感兴趣的朋友可以了解下「for循环」。
这种操作专门针对多个且数量不确定的一系列数据,挨个对「重复项目」进行处理。
就像我们的日程,今天可能1个,就处理一次。明天可能3个,就会处理三次。也可能没有日程,根本不会进入循环,一次也不会处理。
⚠️匹配文本(查找关键词)
如果日程是“劳动节(休)”,那么很显然当天休息。但也有可能是“端午节(休)”,那变化的是节日,不变的是“休”这个字。
我们就只要看,日程里有没有这个“休”字(类似的,也要看有没有“班”字)。这里就要用到「匹配文本」,通俗来说就是查找关键词。
但匹配结果却有个坑,比如“劳动节(休)”匹配“休”,你以为就一个字,但其实匹配到的结果数量不是一个(1个),而是多个(1~N个),因此判断是否匹配到关键词,
❌不要用:匹配结果是否【是】“休”
✅要用:匹配结果是否【包含】“休”
❗日程的标题,以及误匹配的问题
在节假日的判断逻辑中,唯一依据就是日程标题是否包含关键词“休”、“班”。实际上,这样的关键词太短,很容易被匹配到。
例如你创建了一个日程“在苹果审核团队休假前提交App审核”,是一个正经的工作日程提醒,但会因为包含“休”被判定为当天是休息日😱
那解决方案就是,更加准确地去设定关键词,避免误匹配。这里我们就匹配:
([休班])
其中,圆括号是中文符号,方括号是英文符号。方括号的意思是:匹配方括号里的任意一个字。(感兴趣的朋友可以了解下「正则表达式」)
由于方括号里有2个字,加上外面的圆括号,那最终结果应当是以下2种之一:
(休)
(班)
❗通常你应该不会把这样的内容写进你的日程吧。一定要避免哦,不然就会产生误判。
🍺这个“节假日”指令完成了,但是要“复用”,才能配合前面的“大小周”指令,最终形成一个判断逻辑完整的闹钟指令。那么复用其实很简单,组合这两个指令就可以了。
下面新建了一个指令,先引入两个关键指令,再根据他们的结果,设置闹钟。
⚠️闹钟的标签
「时钟」App中创建闹钟的时候,标签一定要和指令中,查找闹钟的筛选条件填写的标签一致,就是要确保正确的闹钟能被筛选到。否则找不到闹钟,就不会进入后续的「重复每一项」循环
🌈🌈🌈
到此,一个能够适应节假日调休的节假日闹钟,指令部分就结束了。但它还需要有人来执行,每天上班前运行一下,看看要不要打开早上的闹钟。。。
当然是「自动化」啦!!!
🛞「自动化」能够在满足特定条件时,自动执行指定的指令
1️⃣在“快捷指令”App中,新建「自动化」,选择「特定时间」
2️⃣配置自动化
3️⃣选择要自动运行的指令。
4️⃣最终看到这个自动化任务,就成功了
⚠️询问?多余
在配置「自动化」时,绝大多数情况下,我们不需要它再向我确认“要不要执行”,直接执行就是了,问就多余。
🎉🎉🎉
以上,完整地介绍了节假日闹钟这个指令的实现思路,以及实现过程中的一些坑,最后顺带配置了自动化运行,从此放假调休补班根本不带怕的~

最新文章

随机文章