summaryrefslogtreecommitdiffstats
path: root/docs/content/en/functions/path/Split.md
blob: bde412743e4a207dd66f51cf00947b1af6d39c41 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
---
title: path.Split
description: Split path immediately following the final slash.
categories: [functions]
keywords: []
menu:
  docs:
    parent: functions
function:
  aliases: []
  returnType: DirFile
  signatures: [path.Split PATH]
relatedFunctions:
  - path.Base
  - path.BaseName
  - path.Clean
  - path.Dir
  - path.Ext
  - path.Join
  - path.Split
aliases: [/functions/path.split]
---

`path.Split` splits `PATH` immediately following the final slash, separating it into a directory and a base component.

The returned values have the property that `PATH` = `DIR`+`BASE`.
If there is no slash in `PATH`, it returns an empty directory and the base is set to `PATH`.

**Note:** On Windows, `PATH` is converted to slash (`/`) separators.

```go-html-template
{{ $dirFile := path.Split "a/news.html" }}
{{ $dirFile.Dir }} → "a/" 
{{ $dirFile.File }} → "news.html"

{{ $dirFile := path.Split "news.html" }}
{{ $dirFile.Dir }} → ""
{{ $dirFile.File }} → "news.html"

{{ $dirFile := path.Split "a/b/c" }}
{{ $dirFile.Dir }} → "a/b/"
{{ $dirFile.File }} → "c"
```