옵시디언 Tasks - Heading 조건절


안녕하세요. 옵시디언 Tasks의 경우 dataview와는 미묘하게 다른 문법을 사용합니다. 특히 한글 처리에 대해서 조금 다른 양상(?)을 보이고 있는데, heading 절의 예를 들어서 설명드리려고 합니다.

Heading 절

task를 heading (# 로 시작하는 부분) 단위로 필터링 하는 절을 의미합니다.

기본문법:

```tasks
heading includes 헤딩명
```

예제로 설명

### 테스크
- [ ] 안녕
* [ ] 하세요
- [ ] 안녕2
* [ ] 하세요2

### 테스크2
- [ ] 안녕3
* [ ] 하세요3
- [ ] 안녕4
* [ ] 하세요4


### 테스크 공백
- [ ] 안녕5
* [ ] 하세요5
- [ ] 안녕6
* [ ] 하세요6


### 앞에 뭔가 있는 테스크
- [ ] 안녕7
* [ ] 하세요7
- [ ] 안녕8
* [ ] 하세요8

## 앞에 뭔가 있는 테스크지만 뒤에도 있음
- [ ] 안녕9
* [ ] 하세요9
- [ ] 안녕10
* [ ] 하세요10

Example

일반적인 출력방법

➜ 원하는 조건의 텍스트에 따옴표가 없어야 합니다.

heading includes 테스크
heading includes "테스크"
heading includes '테스크'
heading includes `테스크`

⚠️ “.=, link, is는 먹히지 않습니다.

heading = 테스크
heading like 테스크
heading is 테스크

정규식

💡 정규식을 사용할 수 있습니다. // 사이에 원하는 문자열을 넣으면 됨.

heading regex matches /테스크/

정확한 문자열 필터링 (Exact match)

💡 정확하게 판별하려면 ^로 시작하고 $로 끝나는 문자를 써야합니다. ⚠️ 정규식을 잘 모를경우 : *, +, ()[], ., ? 등의 예약어에 주의

heading regex matches /^테스크$/

💡 아래와 같이 앞 또는 뒤만 매치되는 정규식도 가능합니다.

heading regex matches /^테스크/
heading regex matches /테스크$/

데이터 영역

테스크

테스크2

테스크 공백

앞에 뭔가 있는 테스크

앞에 뭔가 있는 테스크지만 뒤에도 있음


참고 : https://publish.obsidian.md/tasks/Queries/Filters#Text+filters