INNER CODE UNIT · Go
ParseFieldSelector
ozontech/file.d · cfg/config.go:593
func ParseFieldSelector(selector string) []string {
result := make([]string, 0)
tail := ""
for {
pos := strings.IndexByte(selector, '.')
if pos == -1 {
break
}
if pos > 0 && selector[pos-1] == '\\' {
tail = tail + selector[:pos-1] + "."
selector = selector[pos+1:]
continue
}
if len(selector) > pos+1 {
if selector[pos+1] == '.' {
tail = selector[:pos+1]
selector = selector[pos+2:]