Станимир обнови решението на 25.10.2015 13:44 (преди над 2 години)
+package main
+
+import "strings"
+
+func ExtractColumn(logContents string, column uint8) string {
+ var textToReturn = ""
+ var logs []string = strings.Split(logContents, "\n")
+
+ for _, element := range logs {
+ if element != "" {
+ textToReturn += CreateSubString(element, column)
+ }
+ }
+
+ return textToReturn
+}
+
+func CreateSubString(log string, column uint8) string {
+ var columnText string = ""
+ var logText []string = strings.SplitN(log, " ", 4)
+ switch column {
+ case 0:
+ columnText = logText[0] + " " + logText[1]
+ case 1:
+ columnText = logText[2]
+ case 2:
+ columnText = logText[3]
+ }
+
+ if !strings.Contains(columnText, "\n") && columnText != "" {
+ return columnText + "\n"
+ }
+
+ return columnText
+}
харесва ми, но имам някои забележки :
- този if на края на CreateSubString според мен може да се махне
- може да се намалят конкатенациите на стрингове с цел по-малко създаване на такива - всеки път се създава нов