Добромир обнови решението на 24.10.2015 01:16 (преди над 2 години)
+package main
+
+import "strings"
+import "bytes"
+import "regexp"
+
+func ExtractColumn(logContents string, column uint8) string {
+        var columnFormats = [...]string{"\\d{2}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}", "\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}", "([A-Za-z\\s]+)\\z"}
+        lines := strings.Split(logContents, "\n")
+        var buffer bytes.Buffer
+
+        for _, line := range lines[0 : len(lines)-1] {
+                re := regexp.MustCompile(columnFormats[column])
+                match := strings.TrimSpace(re.FindString(line))
+                buffer.WriteString(match + "\n")
+        }
+
+        return buffer.String()
+}
Интересно решение, но ето няколко забележки:
- не сме ви го преподавали(ще е в следващата лекция) но при синтаксиса lines[a:b] елемента с индекс b не се включва. В твоя случай няма нужда да reslice-ваш изобщо тоест може да е само lines.
 - нищо не пречи третата "колона" да има същата/подобна стойност като на първите две.
 
Препоръчвам ти да си пуснеш тестовете на Таня
