검색(Search) 플러그인을 사용하면 보관소 내의 파일을 검색할 수 있습니다.
기본적으로 검색은 왼쪽 사이드바(돋보기 아이콘)에서 찾을 수 있습니다. 또한 `Ctrl+Shift+F` (또는 macOS에서 `Cmd+Shift+F`)를 눌러 검색을 열 수도 있습니다.
- **선택한 텍스트 검색**: 편집기에서 텍스트를 선택하고 키보드 단축키로 검색을 열면, 검색은 선택한 텍스트에 대한 검색 결과를 표시합니다.
- **최근 검색어 검색**: 빈 검색어로 검색을 열면 최근 검색어를 나열합니다. 이 중에서 검색어를 선택하여 검색어를 다시 사용할 수 있습니다.
## Search terms
검색어는 검색 필드에 입력하는 단어 또는 구절을 의미합니다. 효과적인 검색어 작성 방법을 익히면 큰 보관소에서도 빠르게 원하는 것을 찾을 수 있습니다. Obsidian은 노트와 캔버스의 내용만 검색합니다.
> [!tip] 경로 및 파일 이름 검색
> 기본적으로 노트와 캔버스의 경로와 파일 이름만 검색할 수 있습니다. 보관소의 모든 파일의 경로 또는 파일 이름을 검색하려면 `path` 또는 `file` 연산자를 사용하세요.
검색어의 각 단어는 각 파일 내에서 독립적으로 일치합니다. 정확한 구를 검색하려면 따옴표로 묶어줍니다. 예를 들어 `"스타 워즈"`처럼요. 정확한 구절 내에서 따옴표로 묶인 텍스트를 검색하려면 따옴표 앞에 역슬래시(`\`)를 추가합니다. 예를 들어 `"그들은 \"안녕\"이라고 말했다"`.
검색어의 모든 단어를 포함하는 파일을 반환할지, 단어 중 하나를 포함하는 파일을 반환할지를 제어할 수 있습니다.
- `미팅 업무`는 `미팅`과 `업무`를 모두 포함하는 파일을 반환합니다.
- `미팅 OR 업무`는 `미팅` 또는 `업무`를 포함하는 파일을 반환합니다.
두 가지를 동시에 결합할 수 있습니다.
- `미팅 업무 OR 밋업 개인`은 업무 미팅 및 개인 밋업을 위한 파일을 반환합니다.
괄호를 사용하여 각 표현의 우선순위를 제어할 수 있습니다.
- `미팅 (업무 OR 밋업) 개인`은 `미팅`, `개인` 및 `업무` 또는 `밋업` 중 하나를 포함하는 파일을 반환합니다.
검색 결과에서 단어를 제외하려면 해당 단어 앞에 하이픈(`-`)을 추가합니다.
- `미팅 -업무`는 `미팅`을 포함하지만 `업무`를 포함하지 않는 파일을 반환합니다.
여러 표현으로 제외할 수도 있습니다.
- `미팅 -업무 -밋업`은 `미팅`을 포함하지만 `업무` 또는 `밋업`을 포함하지 않는 파일을 반환합니다.
괄호를 사용하여 여러 표현의 조합으로 제외할 수 있습니다.
- `미팅 -(업무 밋업)`은 `미팅`을 포함하지만 `업무`와 `밋업`을 모두 포함하지 않는 파일을 반환합니다.
> [!tip] 검색어 설명
> 복잡한 검색어를 해결해야 할 때, 검색에서 **검색 단어 표시(Explain search term)**을 클릭하여 검색어의 설명을 확인할 수 있습니다.
## Search operators
검색 연산자를 사용하면 더욱 세분화된 검색 쿼리를 통해 결과를 더욱 효과적으로 필터링할 수 있습니다.
일부 연산자는 괄호 내부에 중첩된 검색어를 추가할 수 있도록 허용하며, 예를 들어 `task:(call OR email)`과 같은 형태입니다.
|검색 연산자|설명|
|---|---|
|`file:`|파일 이름에서 텍스트를 찾습니다. 보관소 내의 모든 파일과 일치합니다.<p/>예: `file:.jpg` 또는 `file:202209`.|
|`path:`|파일 경로에서 텍스트를 찾습니다. 보관소 내의 모든 파일과 일치합니다.<p/>예: `path:"Daily notes/2022-07"`.|
|`content:`|파일 내용에서 텍스트를 찾습니다.<p/>예: `content:"happy cat"`.|
|`match-case:`|대소문자 구분 검색입니다.<p/>예: `match-case:HappyCat`.|
|`ignore-case:`|대소문자 무시 검색입니다.<p/>예: `ignore-case:ikea`.|
|`tag:`|파일 내에서 태그를 찾습니다.<p/>예: `tag:#work`.<p/>**참고**: `tag:`는 코드 블록과 Markdown 이외의 콘텐츠에서 일치를 무시하므로 일반 풀 텍스트 검색보다 빠르고 정확한 경우가 많습니다.|
|`line:`|동일한 라인에서 일치를 찾습니다.<p/>예: `line:(mix flour)`.|
|`block:`|동일한 블록에서 일치를 찾습니다.<p/>예: `block:(dog cat)`.<p/>**참고**: `block:`은 모든 파일의 Markdown 콘텐츠를 파싱할 필요가 있기 때문에 검색어 처리 시간이 길어질 수 있습니다.|
|`section:`|두 제목 사이의 텍스트인 동일한 섹션에서 일치를 찾습니다.<p/>예: `section:(dog cat)`.|
|`task:`|블록별로 [[기본 서식 구문#Task lists|작업]]에서 일치를 찾습니다.<p/>예: `task:call`.|
|`task-todo:`|블록별로 _미완료된_ [[기본 서식 구문#Task lists|작업]]에서 일치를 찾습니다.<p/>예: `task-todo:call`.|
|`task-done:`|블록별로 _완료된_ [[기본 서식 구문#Task lists|작업]]에서 일치를 찾습니다.<p/>예: `task-done:call`.|
## Search properties
[[속성|속성]]에 저장된 데이터를 검색어에서 사용할 수 있습니다.
`[property]` 속성 이름 주변에 대괄호를 사용하여 해당 속성이 있는 파일을 반환합니다:
- `[aliases]`는 `aliases` 속성을 포함하는 파일을 반환합니다.
대괄호와 콜론 `[property:value]`을 사용하여 해당 속성 및 값이 있는 파일을 반환합니다:
- `[aliases:Name]`는 `aliases` 속성 값이 `Name`인 파일을 반환합니다.
- `[completed:true]`은 `completed` 속성 값이 `true`인 파일을 반환합니다.
속성 및 값 모두 괄호를 사용하여 하위 쿼리, 즉 그룹화, `OR` 연산자, 정확한 일치를 위한 따옴표 및 정규 표현식을 지원합니다.
- 예: `[status:Draft OR Published]`은 `status` 속성 값이 `Draft` 또는 `Published`인 파일을 반환합니다.
## Change case sensitivity
기본적으로 검색어는 대소문자를 구분하지 않습니다. 검색어의 정확한 대소문자를 검색하려면 검색 막대 안의 **대소문자 구분**("Aa" 아이콘)를 클릭하십시오.
이 설정은 토글할 수 있습니다. **대소문자 구분** 아이콘이 강조 표시되어 있으면 현재 대소문자 구분 검색을 수행 중임을 나타냅니다.
## Change result sort order
1. [[#Search terms|검색어]]를 입력하십시오.
2. 검색 필드 아래에서 오른쪽에 있는 드롭다운을 클릭하십시오.
3. 원하는 정렬 순서를 선택하십시오. 기본값은 "파일 이름 (A에서 Z)"입니다.
다음 옵션을 사용할 수 있습니다.
- 파일 이름 (A에서 Z)
- 파일 이름 (Z에서 A)
- 수정된 시간 (최신부터 오래됨)
- 수정된 시간 (오래에서 최신으로)
- 작성된 시간 (최신부터 오래됨)
- 작성된 시간 (오래에서 최신으로)
## Copy search results
1. [[#search terms|검색어]]를 입력하십시오.
2. 결과 수 옆에 있는 세 개의 점 아이콘을 선택하십시오.
3. **검색 결과 복사(Copy search results)**를 선택하십시오.
## Use regular expressions
정규 표현식은 텍스트 패턴을 설명하는 문자 집합입니다. 검색어에서 정규 표현식을 사용하려면 표현식을 슬래시 (`/`)로 둘러싸십시오.
- `/\d{4}-\d{2}-\d{2}/`는 2022-01-01과 같은 ISO 8601 날짜와 일치합니다.
정규 표현식을 검색 연산자와 결합할 수도 있습니다.
- `path:/\d{4}-\d{2}-\d{2}/`은 파일 경로에 날짜가 있는 파일을 반환합니다.
정규 표현식 작성 방법에 대한 자세한 내용은 [정규 표현식](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions)을 참조하십시오.
> [!note]
> 정규 표현식은 서로 다르게 보일 수 있는 다양한 형태로 제공됩니다. Obsidian은 JavaScript 기반의 정규식을 사용합니다.
## Configure search settings
검색을 구성하려면 검색 막대 오른쪽에 있는 **Search Settings** (세 줄의 스위치 아이콘)을 클릭하십시오.
|설정 |설명 |
|-------------|-------------------------------------------------|
|**검색어 단어 표시**|검색어를 분석하고 평문으로 설명합니다.|
|**검색 결과 축소** |검색 컨텍스트를 표시 여부를 전환합니다.|
|**앞뒤로 표시** |검색 결과를 확장하여 일치 항목 주변에 더 많은 텍스트를 표시합니다.|
## Embed search results in a note
노트에 검색 결과를 임베드하려면 `query` 코드 블록을 추가하십시오:
<pre><code>```query
embed OR search
```</code></pre>
예를 들면:
> [!note]
> [[Obsidian Publish 소개|Obsidian Publish]]은 임베드된 검색 결과를 지원하지 않습니다. 예를 보려면 Obsidian 내에서 Obsidian 도움말을 열어야 합니다.
```query
embed OR search
```