You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写Regex匹配Obsidian中指定Markdown标题下的任务

匹配Obsidian中指定标题下任务项的正则方案

要只抓取# Now标题下的所有带复选框的任务(包括子项),可以基于你现有的任务匹配正则,加上范围限定逻辑,最终正则如下:

(?<=^# Now\n)(?:(?!^# ).*\n)*?^[ \t]*(-|\*|\d*\.) \[[xX ]\].*$

关键逻辑拆解

  • 范围锁定:(?<=^# Now\n) 是正向后顾断言,确保匹配内容紧跟在# Now标题行之后;(?!^# ).*\n 是负向前瞻,确保不会匹配到下一个一级标题(以# 开头的行),把匹配范围严格限定在# Now到下一个一级标题之间
  • 任务识别:最后的^[ \t]*(-|\*|\d*\.) \[[xX ]\].*$就是你原本的任务行匹配规则,负责识别带复选框的任务项
  • 惰性匹配:*? 确保正则不会过度扩展匹配范围,避免跨标题抓取内容

注意事项

  • 需开启多行模式(Obsidian的正则引擎默认支持该模式,^和$会匹配每行的首尾)
  • 子任务会被自动包含,因为正则会覆盖# Now下所有非一级标题的内容,再从中筛选任务行

内容的提问来源于stack exchange,提问作者derekvan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 23:25:20